我这个汇编语言怎么错的?我的目的是1加到100然后显示结果(十六位进制的...

发布网友 发布时间:2024-10-22 22:06

我来回答

2个回答

热心网友 时间:2024-11-13 10:28

错误处已修改,至于为什么要这样改,自己找答案。
其实你用DEBUG一调试就可找出原因。
呵呵,加油!!!

CODE SEGMENT
ASSUME CS:CODE
START:
MOV AX,0
MOV CX,100
MOV BX,1
KK0: ADD AX,BX
INC BX
LOOP KK0;出现了13BAH
MOV CX,4
KK4: ROL AX,1;变成3BA1H
ROL AX,1
ROL AX,1
ROL AX,1
MOV DX,AX
AND DL,0FH; dl=1
; CMP DL,0
; Jg KK2
CMP DL,9
Jg KK2 ;若是数字则不跳转,加30H调整为

ASCII,若是字母,跳转,加37H调整
ADD DL,30H
JMP KK3
KK2: ADD DL,37H
KK3:
push ax

MOV AH,02
; LOOP kK4
INT 21H
pop ax
LOOP kK4
MOV AX,4C00H
INT 21H
CODE ENDS
END START

热心网友 时间:2024-11-13 10:29

要是专门的汇编软件的话,运行以后会出现绿色的竖条。要是MASM-LINK-DEBUG,这样的操作的话MASM以后(看图片):这个程序错误出现在:第11行,第12行,第20行,第28行,第31行,第33行,第37行,下面显示的是 0个警告,7个错误。
请参考

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com