主题:加分求助:找找我错在哪里??
我编写一段从键盘读入一个十进制数的问题,编写如下过程,但乘法总是错,自己在debug中调试,发现AX的最高位总是0,不知是何原因:
READ PROC NEAR
MOV BX,0
AGAIN:
MOV AH,01H
INT 21H
CMP AL,'A'
JZ ISEND
SUB AL,'0'
MOV AH,0H
MOV CX,10
CBW
XCHG AX,BX
MUL CL
XCHG AX,BX
ADD BX,AX
JMP AGAIN
ISEND:
RETN
READ ENDP
READ PROC NEAR
MOV BX,0
AGAIN:
MOV AH,01H
INT 21H
CMP AL,'A'
JZ ISEND
SUB AL,'0'
MOV AH,0H
MOV CX,10
CBW
XCHG AX,BX
MUL CL
XCHG AX,BX
ADD BX,AX
JMP AGAIN
ISEND:
RETN
READ ENDP