第1个回答 2018-07-10
微机原理与接口技术,实验项目三练习3,用8086运行
DATA SEGMENT
OUT_TABLE DW PF0, PF1, PF2, PF3, PF4, PF5, PF6, PF7, PF8, PF9
;PIFANG_TABLE
PF0 DB '0 $'
PF1 DB '1 $'
PF2 DB '4 $'
PF3 DB '9 $'
PF4 DB '16 $'
PF5 DB '25 $'
PF6 DB '36 $'
PF7 DB '49 $'
PF8 DB '64 $'
PF9 DB '81 $'
INFOR1 DB "Please input a number(<10):$"
INFOR2 DB 13,10,"The cube of the number is:$" ;13,10,可用0AH,ODH,替换,都表示换行回车
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START:
MOV AX, DATA
MOV DS, AX
MOV DX,OFFSET INFOR1 ;输入提示信息1
MOV AH,09H
INT 21H
MOV AH, 01H
INT 21H ;输入一字符
PUSH DX
PUSH AX
MOV DX,OFFSET INFOR2
MOV AH,09H
INT 21H
POP AX
POP DX
CMP AL, '0'
JB EXIT
CMP AL, '9'
JA EXIT
AND AL, 0FH ;AL=0~9
MOV AH, 0
MOV BX, AX ;BX=0~9
ADD BX, BX
MOV AX, [BX] ;查表得出结果
LEA DX, OUT_TABLE
ADD DX, AX
; PUSH AX
; PUSH DX
; MOV DX,OFFSET INFOR2
; MOV AH,09H
; INT 21H
; POP DX
; POP AX
MOV AH, 9 ;显示
INT 21H
EXIT:
MOV AX, 4CH
INT 21H
CODE ENDS
END START