不知道贴长代码会不会有人看。。但我实在不知道哪里出错了,请各位帮忙看下吧~
代码如下:DATA SEGMENT
MESSAGE DB 'INPUT STRINGS:',13,10,'$'
DATA1 DB 100 DUP(?)
DATA3 DB 'RESULT=',13,10,'$'
CR DB 13,10,'$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV BX,0
MOV CX,0
MOV DX,OFFSET MESSAGE
MOV AH,09H
INT 21H
MOV SI,OFFSET DATA1
L1:
MOV AH,01H
INT 21H
CMP AL,0DH
JMP NEXT
MOV [SI+BX],AL
INC BX
CMP AL,'0'
JB L1
CMP AL,'9'
JA L1
INC CX
JMP L1
NEXT:
MOV DX,OFFSET DATA3
MOV AH,09H
INT 21H
DEC BX
MOV CX,BX
MOV SI,OFFSET DATA1
L2:
MOV AH,02H
MOV DL,[SI]
ADD DL,30H
INT 21H
INC SI
LOOP L2
MOV AH,4CH
INT 21H
CODE ENDS
END START
运行结果是,先输出INPUT:
然后随便输入一个字符都会跳出一大段乱码。
请问哪里出问题了?