aces 发表于 2013-12-17 23:47:23

急急急汇编作业题

assume cs:code
    code segment
          mov ax,0b800h
                mov ds,ax
                mov si,0
                mov bp,160
                mov di,0
               
          mov ax,0e908h
                mov dx,4fh
        s_1:mov cx,10
                call divdw;不会溢出的除法
                add cl,30
                mov ds:,cl/*为什么这句传递给内存的数据是41而不是三十我都开始怀疑是不是电脑脑抽了*/
                mov cx,ax
                add cx,dx
                jcxz ok
                add si,2
                jmp s_1
               
                ok:mov ax,4c00h
                int 21h
               

divdw:push ax
      mov ax,dx
                mov dx,0
                div cx
                pop bx
                push ax
                mov ax,bx
                div cx
                mov cx,dx
                pop bx
                mov dx,bx
                ret
               
                code ends
                end

目的是在屏幕上显示0007325
               

要没时间了 发表于 2013-12-18 09:10:25

你那句指令之前是addcl,30 你之前cx没清零的啊

aces 发表于 2013-12-18 18:17:15

已经找到错了应该是加30h
谢谢你的帮助

364063141 发表于 2013-12-23 10:24:41

支持鱼C,顶一下
页: [1]
查看完整版本: 急急急汇编作业题