早教吧作业答案频道 -->其他-->
4-5用查表程序求0~8之间整数的立方。(用汇编语言)
题目详情
4-5 用查表程序求0~8之间整数的立方。(用汇编语言)
▼优质解答
答案和解析
不知楼上用的什么编译软件。
楼上的程序,用MASM.EXE编译,提示有些错误。
经过修改,可以通过编译了。
运行结果正常。
程序如下:
;--------------------------------------------------------------------
DATA SEGMENT
; 立方数据表格.
TABLE DW 0, 1, 8, 27, 64, 125, 6*6*6, 7*7*7, 8*8*8, 9*9*9
DATA ENDS
;--------------------------
STACK SEGMENT
DW 128 DUP(0)
STACK ENDS
;--------------------------
CODE SEGMENT
ASSUME CS: CODE, DS: DATA, SS: STACK
START:
MOV AX, DATA
MOV DS, AX
MOV ES, AX
M_LOOP:
MOV AH, 1
INT 21H
CMP AL, 1BH
JZ EXIT
CMP AL, 30H
JL M_LOOP
CMP AL, 39H
JG M_LOOP
SUB AL, 30H
;------------------------------
MOV BX, TABLE
PUSH CX
SHL AL, 1
MOV AH, AL
INC AH
XLAT
MOV CL, AL
MOV AL, AH
XLAT
MOV CH, AL
MOV AX, CX
POP CX
;------------------------------
CALL CR_LF
CALL OUT_AX
CALL CR_LF
JMP M_LOOP
;------------------------------
EXIT:
MOV AX, 4C00H ;EXIT TO OPERATING SYSTEM.
INT 21H
;--------------------------------------------
OUT_AX PROC NEAR
PUSH BX
MOV DL, 0
CALL OUT_ASC
MOV BL, 100
DIV BL
MOV DL, AL
CALL OUT_ASC
MOV AL, AH
XOR AH, AH
MOV BL, 10
DIV BL
MOV DL, AL
CALL OUT_ASC
MOV DL, AH
CALL OUT_ASC
POP BX
RET
OUT_AX ENDP
;--------------------------------------------
OUT_ASC PROC NEAR
ADD DL, 30H
CALL OUT_DL
RET
OUT_ASC ENDP
;--------------------------------------------
CR_LF PROC NEAR
MOV DL, 10
CALL OUT_DL
MOV DL, 13
CALL OUT_DL
RET
CR_LF ENDP
;--------------------------------------------
OUT_DL PROC NEAR
PUSH AX
MOV AH, 02H
INT 21H
POP AX
RET
OUT_DL ENDP
;--------------------------------------------
CODE ENDS
END START
------------------------------------------------------------------
楼上的程序,用MASM.EXE编译,提示有些错误。
经过修改,可以通过编译了。
运行结果正常。
程序如下:
;--------------------------------------------------------------------
DATA SEGMENT
; 立方数据表格.
TABLE DW 0, 1, 8, 27, 64, 125, 6*6*6, 7*7*7, 8*8*8, 9*9*9
DATA ENDS
;--------------------------
STACK SEGMENT
DW 128 DUP(0)
STACK ENDS
;--------------------------
CODE SEGMENT
ASSUME CS: CODE, DS: DATA, SS: STACK
START:
MOV AX, DATA
MOV DS, AX
MOV ES, AX
M_LOOP:
MOV AH, 1
INT 21H
CMP AL, 1BH
JZ EXIT
CMP AL, 30H
JL M_LOOP
CMP AL, 39H
JG M_LOOP
SUB AL, 30H
;------------------------------
MOV BX, TABLE
PUSH CX
SHL AL, 1
MOV AH, AL
INC AH
XLAT
MOV CL, AL
MOV AL, AH
XLAT
MOV CH, AL
MOV AX, CX
POP CX
;------------------------------
CALL CR_LF
CALL OUT_AX
CALL CR_LF
JMP M_LOOP
;------------------------------
EXIT:
MOV AX, 4C00H ;EXIT TO OPERATING SYSTEM.
INT 21H
;--------------------------------------------
OUT_AX PROC NEAR
PUSH BX
MOV DL, 0
CALL OUT_ASC
MOV BL, 100
DIV BL
MOV DL, AL
CALL OUT_ASC
MOV AL, AH
XOR AH, AH
MOV BL, 10
DIV BL
MOV DL, AL
CALL OUT_ASC
MOV DL, AH
CALL OUT_ASC
POP BX
RET
OUT_AX ENDP
;--------------------------------------------
OUT_ASC PROC NEAR
ADD DL, 30H
CALL OUT_DL
RET
OUT_ASC ENDP
;--------------------------------------------
CR_LF PROC NEAR
MOV DL, 10
CALL OUT_DL
MOV DL, 13
CALL OUT_DL
RET
CR_LF ENDP
;--------------------------------------------
OUT_DL PROC NEAR
PUSH AX
MOV AH, 02H
INT 21H
POP AX
RET
OUT_DL ENDP
;--------------------------------------------
CODE ENDS
END START
------------------------------------------------------------------
看了 4-5用查表程序求0~8之间...的网友还看了以下:
【问题2】(5分) 按照表4-2的程序寻址方式,说明表4-4中各汇编指令中指定的地址属于哪类程序寻址 2020-05-25 …
下列项目中,可以作为登记账簿依据的有()。A.收款凭证B.科目汇总表C.汇总原始凭证下列项目中,可 2020-06-10 …
19在下图所提供的汇率表中,汇(钞)卖价一栏表示银行卖出100外币元的人民币价格,钞买价一栏表示银 2020-06-23 …
下表是某同学为验证酶的专一性而设计的实验方案,a~d表示4支试管,①~⑦表示实验步骤.对该:验方案 2020-06-25 …
游船从某码头沿直线行驶到湖对岸,小明对过程进行观测,记录数据如表:运动过程运动时间运动状态匀加速运 2020-07-09 …
游船从某码头沿直线行驶到湖对岸,小明对过程进行观测记录数椐如表运动过程运动时间运动状态匀加速运动0 2020-07-09 …
英语翻译1.建设项目一览表2.外接工程一览表3.各项评估、勘察一览表4.建设项目报批一览表5.各类 2020-07-31 …
下表是几种可燃性气体在空气中的爆炸极限,据此判断下列说法正确的是()气体CH4H2COC2H2爆炸极 2020-11-02 …
观察并填写下面的复式统计表回答问题.三年级一班本学期体检视力统计表4.2以下4.3~4.64.7~4 2020-11-07 …
某校教师进行体格检查,测得他们的收缩压(血压,单位:毫米汞柱)的值如表所示:收缩压范围89.5~10 2020-12-24 …