主题:新手问题:为什么这个程序输不出结果?书上的例子
DATAS SEGMENT
INPUT DB 'PLEASE INPUT X(0...9):$'
TAB DW 0,1,8,27,64,125,216,343,512,729
X DB ?
XXX DW ?
INERR DB 0DH,0AH,'INPUT ERROR!$'
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START: MOV AX,DATAS
MOV DS,AX
MOV DX,OFFSET INPUT
MOV AH,9
INT 21H
MOV AH,1
INT 21H
CMP AL,'0'
JB LERR
CMP AL,'9'
JA LERR
AND AL,0FH
MOV X,AL
ADD AL,AL
MOV BL,AL
MOV BH,0
MOV AX,TAB[BX]
MOV XXX,AX
EXIT: MOV AH,4CH ;退出程序
INT 21H
LERR: MOV DX,OFFSET INERR
MOV AH,9
INT 21H
JMP EXIT
CODES ENDS
END START
INPUT DB 'PLEASE INPUT X(0...9):$'
TAB DW 0,1,8,27,64,125,216,343,512,729
X DB ?
XXX DW ?
INERR DB 0DH,0AH,'INPUT ERROR!$'
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START: MOV AX,DATAS
MOV DS,AX
MOV DX,OFFSET INPUT
MOV AH,9
INT 21H
MOV AH,1
INT 21H
CMP AL,'0'
JB LERR
CMP AL,'9'
JA LERR
AND AL,0FH
MOV X,AL
ADD AL,AL
MOV BL,AL
MOV BH,0
MOV AX,TAB[BX]
MOV XXX,AX
EXIT: MOV AH,4CH ;退出程序
INT 21H
LERR: MOV DX,OFFSET INERR
MOV AH,9
INT 21H
JMP EXIT
CODES ENDS
END START