内容发布更新时间 : 2024/12/23 9:15:58星期一 下面是文章的全部内容请认真阅读。
3、 ;
4、 ;
5、 。
参考答案: MOV AX,DATA
MOV DS,AX MOV AX,EXTRA MOV ES,AX
MOV CX,17 只要写出以上5条指令就给分,每条指令1分。 评分标准:指令中没有写出逗号、没有写对相应数据、写错操作码都视为错误答案。
19. 已知主程序和子程序之间的调用如下:
STACK SEGMENT
DB 100 DUP(0)
STACK ENDS CODE1 SEGMENT
ASSUME CS:CODE1,SS:STACK
BEG: ?
MOV AX, 0A3BH MOV CX, 1234H
CALL FAR PTR AA ;断点(IP)
=1110H, (CS)=0200H
?
CODE1 ENDS CODE2 SEGMENT
ASSUME CS:CODE2
AA PROC FAR
PUSH AX PUSH CX BB: ?
RET AA ENDP CODE2 ENDS END BEG
画出执行到标号BB时,堆栈的情况图。
参考答案: 1234H 0A3BH 1110H 0200H 20. 寄存器的二进制数用十六进制数的形式在屏幕上显示出来。
参考答案:
1、 CODE SEGMENT
MAIN PROC FAR
ASSUME CS:CODE START:
PUSH DS SUB AX,AX PUSH AX
MOV CH,4 ROTATE:MOV CL,4
ROL BX,CL MOV AL,BL AND AL,0FH ADD AL,30H CMP AL,3AH JL PRINTIT
ADD AL,07H PRINTIT:MOV DL,AL
MOV AH,2 INT 21H
DEC CH JNZ ROTATE RET MAIN ENDP CODE ENDS
END START
21. 写出一段子程序,完成输出空行的功能。空出的行数在AX寄存器中。
参考答案:
CODE SEGMENT
MAIN PROC FAR
ASSUME CS:CODE START:
PUSH DS SUB AX,AX PUSH AX MOV AX,5 OUTPUT:PUSH AX CALL DISP
POP AX
DEC AX
22. 假定(DS)=2000H,(SS)=1500H,(SI)=00A0H,(BX)=0100H,(BP)
=0010H则
MOV AX,[BX+10]的寻址方式
是 ;操作数的物理地址是 。
MOV AX,[BP][SI]的寻址方式
是 ;操作数的物理地址是 。
参考答案:
寄存器相对寻址 物理地址:20110H
基址变址寻址 物理地址:150B0H
23. 如果TABLE为数据段中0032H单元的符号名,其中存放的内容为1234H,则
执行MOV AX,TABLE 后AX寄存器的内容是 ;执行LEA AX,TABLE后AX寄存器的内容是 。
参考答案:
1234H 0032H
24. 如果TABLE为数据段中0032H单元的符号名,其中存放的内容为1234H,则
执行MOV AX,TABLE 后AX寄存器的内容是 ;执行LEA AX,TABLE后AX寄存器的内容是 。
参考答案:
1234H 0032H
25. 1、汇编语言程序上机操作的步骤
是 ;
;
; 。
参考答案:
用编辑器编写汇编源程序ASM文件 用MASM命令编译ASM文件为OBJ文件 用LINK命令连接OBJ文件为EXE文件
在DOS下运行程序查看结果或者进入DEBUG查看结果
26. 假设X和X+2单元的内容为双精度数P, Y和Y+2单元的内容为双精度数Q
(X,Y为低位字),试说明下列程序段做什么工作? MOV DX,X+2 MOV AX,X ADD AX,X
ADC DX,X+2 CMP DX,Y+2 JL L2 JG L1 CMP AX,Y JBE L2 L1: MOV AX,1
JMP EXIT
L2: MOV AX,2 EXIT:… 分析以上程序段。写出该程序段实现的功
能: 。
参考答案:
程序功能: AX =1 (2P>Q)
=2 (2P≤Q) 用语言描述也正确。
27.
MOV CL,4
SHL DX,CL MOV BL,AH SHL AX,CL SHR BL,CL OR DL,BL
分析以上程序段。写出该程序段实现的功
能: 。
参考答案:
程序功能:把DX AX构成的双精度数左移四位
28. 以下程序段实现从键盘输入一个十进制数并转换成二进制数,试分析程序并
填写恰当的指令使程序完整。
MOV BX,0
NEWCHAR: INT 21H SUB AL,30H JL EXIT
CMP AL,9D JG EXIT
XCHG AX,BX MOV CX,10D
XCHG AX,BX ADD BX,AX JMP NEWCHAR
EXIT:RET
参考答案:
MOV AH,1
CBW
MUL CX
29. 下列程序段实现计算(V-(X*Y+Z-540))/X,并把结果的商存入AX,余数
存入DX,其中X,Y,Z,V都是16位带符号数,已经分别装入了X,Y,Z,V单元中。试分析程序并填写恰当的指令使程序完整。
MOV AX,X IMUL Y
MOV CX,AX MOV BX,DX MOV AX,Z CWD
ADD CX,AX
SUB CX,540
MOV AX,V
SUB AX,CX SBB DX,BX IDIV X
参考答案:
ADC BX,DX
SBB DX,0
CWD
平分标准:有写错指令操作码的不给分。
30. 在ADDR单元中存放着数据Y,试编写一程序把Y中1的个数存入COUNT单元
中。
参考答案:
DATA SEGMENT ADDR DW Y COUNT DW ?
DATA ENDS CODE SEGMENT
MAIN PROC FAR
ASSUME CS:CODE ,DS:DATA