主题:程序改错
请帮忙检查一下:
有输入但是无法输出
谢谢!
DATA SEGMENT
BUFF DB 40
DB ?
DB 40 DUP (?)
A DB 'PLEASE IN PUT A STRING ',0AH,0DH,'$'
B DB 'THE MUN IS :',0AH,0DH,'$'
C DB 'THE LETTER IS :',0AH,0DH,'$'
D DB 'ERROR','$'
E DW 0
F DW 0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV DX,OFFSET A
MOV AH,09H
INT 21H
MOV DX,OFFSET BUFF
MOV AH,0AH
INT 21H
MOV BX,OFFSET BUFF
NEXT:CMP BX,'0'
JAE NEXT1
JMP WRONG
NEXT1:CMP BX,'9'
JA NEXT2
JMP NUM
NEXT2:CMP BX,'A'
JAE NEXT3
JMP WRONG
NEXT3:CMP BX,'Z'
JA NEXT4
JMP LETTER
NEXT4:CMP BX,'a'
JAE NEXT5
JMP WRONG
NEXT5:CMP BX,'z'
JA WRONG
JMP LETTER
NUM:INC E
INC BX
CMP BX,'$'
JE OUT1
JMP NEXT1
LETTER:INC F
INC BX
CMP BX,'$'
JE OUT2
JMP NEXT1
OUT1:MOV DX,OFFSET B
MOV AH,09H
INT 21H
MOV DX,E
MOV AH,09H
INT 21H
JMP EXIT
OUT2:MOV DX,OFFSET C
MOV AH,09H
INT 21H
MOV DX,F
MOV AH,09H
INT 21H
JMP EXIT
WRONG:MOV DX,OFFSET D
MOV AH,09H
INT 21H
EXIT:MOV AH,4CH
INT 21H
CODE ENDS
END START
有输入但是无法输出
谢谢!
DATA SEGMENT
BUFF DB 40
DB ?
DB 40 DUP (?)
A DB 'PLEASE IN PUT A STRING ',0AH,0DH,'$'
B DB 'THE MUN IS :',0AH,0DH,'$'
C DB 'THE LETTER IS :',0AH,0DH,'$'
D DB 'ERROR','$'
E DW 0
F DW 0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV DX,OFFSET A
MOV AH,09H
INT 21H
MOV DX,OFFSET BUFF
MOV AH,0AH
INT 21H
MOV BX,OFFSET BUFF
NEXT:CMP BX,'0'
JAE NEXT1
JMP WRONG
NEXT1:CMP BX,'9'
JA NEXT2
JMP NUM
NEXT2:CMP BX,'A'
JAE NEXT3
JMP WRONG
NEXT3:CMP BX,'Z'
JA NEXT4
JMP LETTER
NEXT4:CMP BX,'a'
JAE NEXT5
JMP WRONG
NEXT5:CMP BX,'z'
JA WRONG
JMP LETTER
NUM:INC E
INC BX
CMP BX,'$'
JE OUT1
JMP NEXT1
LETTER:INC F
INC BX
CMP BX,'$'
JE OUT2
JMP NEXT1
OUT1:MOV DX,OFFSET B
MOV AH,09H
INT 21H
MOV DX,E
MOV AH,09H
INT 21H
JMP EXIT
OUT2:MOV DX,OFFSET C
MOV AH,09H
INT 21H
MOV DX,F
MOV AH,09H
INT 21H
JMP EXIT
WRONG:MOV DX,OFFSET D
MOV AH,09H
INT 21H
EXIT:MOV AH,4CH
INT 21H
CODE ENDS
END START