鱼C论坛

 找回密码
 立即注册
查看: 2593|回复: 4

第10章10-3题 数据部分!求修改

[复制链接]
发表于 2012-2-20 11:56:51 | 显示全部楼层 |阅读模式
3鱼币
本帖最后由 莫名其妙 于 2012-2-20 23:18 编辑

dtoc:   push dx
    push cx
    push bx
    push si
    push di   ;各种进栈
    mov bx,0
    mov si,0   
  x:  mov cx,10   ;除数为10
    mov dx,0   ;被除数高16位置0
      
       div cx                 ;ax 是商 dx是余数 余数+30h进栈  然后在出栈
    mov cx,ax               ;进行循环判断 cx=0  进行 jcxz 跳转
   
   
    add dx,30h
    push dx     ;将余数保存进栈
    inc bx   ;保存push次数
   
    jcxz orzz   ;跳
    jmp short x
   
orzz:  mov cx,bx  ;读取push次数 设置循环值
     pop ax   ;余数出栈
     mov ds:[si],al
    jcxz orz
   inc si
    dec bx ;循环次数自减
       jmp short orzz
  
orz:  pop di
    pop si
    pop bx
    pop cx
    pop dx
     ret

以上是第10章 10-3题 中间call  dtoc 代码 按照我的思路应该是可以执行的但是一直DEBUG 报错 求修改!~
下面是debug 单步跟踪的 出现问题的地方就在 ret 以后   难道是栈的问题?   我设置的栈  db 10 dup (0) 难道call 保存的IP没存上?
-t
AX=0000  BX=00A5  CX=0000  DX=0031  SP=FFFE  BP=0000  SI=1405  DI=0000
DS=1404  ES=13F4  SS=1405  CS=1406  IP=004E   NV UP EI PL ZR NA PE NC
1406:004E 5A            POP     DX
-t
AX=0000  BX=00A5  CX=0000  DX=0013  SP=0000  BP=0000  SI=1405  DI=0000
DS=1404  ES=13F4  SS=1405  CS=1406  IP=004F   NV UP EI PL ZR NA PE NC
1406:004F C3            RET
-d 1404:0
1404:0000  31 32 36 36 36 00 00 00-00 00 00 00 00 00 00 00   12666...........
1404:0010  00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00   ................
1404:0020  B8 7A 31 BB 04 14 8E DB-BB 05 14 8E D3 BE 00 00   .z1.............
1404:0030  E8 0E 00 B6 08 B2 03 B1-CA E8 34 00 B8 00 4C CD   ..........4...L.
1404:0040  21 52 51 53 56 57 BB 00-00 BE 00 00 B9 0A 00 BA   !RQSVW..........
1404:0050  00 00 F7 F1 8B C8 83 C2-30 52 43 E3 02 EB ED 8B   ........0RC.....
1404:0060  CB 58 88 04 E3 04 46 4B-EB F5 5F 5E 5B 59 5A C3   .X....FK.._^[YZ.
1404:0070  53 51 56 B0 A0 FE CE F6-E6 8B D8 B0 02 F6 E2 83   SQV.............
-t
AX=0000  BX=00A5  CX=0000  DX=0013  SP=0002  BP=0000  SI=1405  DI=0000
DS=1404  ES=13F4  SS=1405  CS=1406  IP=0000   NV UP EI PL ZR NA PE NC
1406:0000 B87A31        MOV     AX,317A
-

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-2-20 23:15:25 | 显示全部楼层
唉..低级超级低级错误  竟然漏写了sp 指针位置我说怎么 回事呢...!~~:@:@:@:'(:'( 这实验10可是费了不少脑细胞!~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-2-20 23:17:39 | 显示全部楼层
已经解决了  竟然是忘记写指针!~mov sp,10 mov sp,10 mov sp,10 mov sp,10 mov sp,10 mov sp,10 ........默写10遍以儆效尤!~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-11-12 20:30:09 | 显示全部楼层
看不来呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-2-16 12:47:05 | 显示全部楼层
漏写了sp 指针位置mov sp,10
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-19 08:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表