回 帖 发 新 帖 刷新版面

主题:经调试,已经知道错在哪里,却不知怎么错的?

下面要完成1到100之和,并显示十进制数和,请各位帮忙看一下

data segment
result db 4 dup(0)
data ends
code segment
     assume cs:code,ds:data
start:mov ax,data
      mov ds,ax
      mov cx,100
      xor ax,ax
lop1:adc ax,cx
     loop lop1

     xor dx,dx
     lea si,result+3
     mov bx,10
     mov cx,4
lop2:div bx
     mov [si],dl
     dec si
     loop lop2     ;就是在lop2的这几句话有问题,但不知怎么错的?

     mov cx,4
     lea si,result
display:mov dl,[si]
        or dl,30h
        mov ah,2h
        int 21h
        inc si
        loop display
        mov ah,4ch
        int 21h
code ends
   end start

回复列表 (共6个回复)

沙发

麻烦大家来回个帖啊![em11]

板凳

不好意思 我帮不了你!呵!
请各路英雄好汉帮帮忙啊!

3 楼

抱歉!我是汇编菜鸟,调试了,并作了修改,但是并不成功,等待能者……

4 楼

这个用C好一点,不知道你这个是用在什么芯片上的
我在硬件方面好一点
请各位多多指教

5 楼

估计是你的ADC AX,CX出了问题
也就是说CF没有清零。

6 楼

调试过了,答案是DX没有再次清零。
lop2:div bx
     mov [si],dl
     dec si
     XOR DX,DX
     loop lop2

我来回复

您尚未登录,请登录后再回复。点此登录或注册