汇编语言习题2

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

选择
1、设AX中有一带符号数8520H,执行SAR AX,1指令后,AX中的值是()
A. 0C290H
B.0A40H
C. 4290H
D.0C260H
2、下列中指令执行后,能影响标志位的指令是()
A.PUSHF
B.POPF
C.JNLE OPR
D.LOOPZ LOP
3、循环控制指令LOOPNZ/LOOPNE继续执行循环的条件是()
A.CX≠0且ZF=1
B.CX≠0且ZF=0
C.CX≠0或ZF=1
D.CX≠0或ZF=0
4、下面两个传送指令语句中源操作数寻址方式是()
V AR1 DW 32H
V AR2 EQU32H

MOV AX,V AR1
MOV BX,V AR2
A.都是立即数寻址
B.前一条指令是立即数寻址,后一条指令是直接寻址
C.前一条指令是直接寻址,后一条指令是立即寻址
D.都是直接寻址
5、ARRAY DW 6,9,$+4,10H,1,$+4

MOV AX,ARRAY+4
设变量ARRAY的偏移量是0084H,上述指令执行后AX中的内容是()
A.008CH
B. 0009
C.0090H
D.0001H
6、指令语句中标号的错误定义是()
A.在代码段中的名字项定义,后面紧跟冒号
B.用EQU伪指令定义
C.用LABEL伪指令定义
D.由“JMP标号”指令定义
7、为在一连续的存储单元中依次存放数据41H,42H,…48H,下面的数据定义语句中有语法错误的是()
A.DB 41H,42H,43H,44H,45H,46H,47H,48H
B.DW 4142H,4344H,4546H,4748H
C.DB …ABCDEFGH‟
D.DW …BA‟,…DC‟,…FE‟,…HG‟
8、设NUM=11011011B,指令“MOV AX,NUM SHL 3”执行后AX中的值是()
A.11011011000B
B.11011000B
C.00011011B
D.00011011011B
9、用REPE SCASB指令对字符串进行扫描,如CX≠0时,扫描结束,那么表示()
A.在字符串中遇上第一个AL中指定的字符
B.在字符串中有一个AL中指定的字符
C.在字符串中有一个不是AL中指定的字符
D.在字符串中遇上第一个不是AL中指令的字符
10、设(SP)=0028H,执行段内返回指令RET 6后,SP的内容是()
A.0036H
B.0022H
C.0030H
D.0020H
11. 当执行完下列指令序列后,标志位CF和OF的值为( )
MOV AH,85H
SUB AH,32H
A. 0,0
B. 0,1
C. 1,0
D. 1,1
12. 已知RET是属性为NEAR子程序中的返回指令,执行RET前SP=100,执行后,
SP的内容为( )
A. 102H
B. 104H
C. 104
D. 102
13. 指令MOV AX,-10[SI]的源操作数的寻址方式为( )
A. 基址寻址
B. 基址变址寻址
C. 变址寻址
D. 寄存器间接寻址
14. 确定下列哪些数据在汇编语言中的表示是正确的( )
A.19B+25D B. 25 AND 0D3H
C.108Q-102 D. 101B MUL 0ABH
15. 已知AL,BL中为无符号数, 若使AL≤BL时转到标号OK, 哪个程序段不能实现此功能
( )
A. CMP AL,BL
B. CMP AL,BL
JC OK JBE OK
C. CMP BL,AL
D. CMP BL,AL
JNB OK JNC OK
16. NEXT是程序中标号,下述哪个程序段不能实现转移到NEXT语句执行()
A. JMP NEXT
B. MOV BX,OFFSET NEXT
JMP WORD PTR[BX]
C. DA TA DW NEXT
D. LEA AX,NEXT
JMP DA TA JMP AX
17. DA TA的定义如下:DATA DW 1234H
现想把12H取入到AL寄存器,可以实现该功能的是()
A. MOV AL,BYTE PRT DATA
B. MOV AL,BYTE PTR DATA+1
C. MOV AL,HIGH DATA
D. MOV AX,DATA
18、若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX= ? ( )
A. 1400H
B. 77F8H
C. 0000H
D. 0FFFFH
A.185A2H
B. 0AB568H
C.01004H
D. 00020H
19、DW 10 DUP (2 DUP(3),300H)
上述定义的数据单元中,能构成0303H字存储单元的个数是()
A.10H
B.20H
C.1EH
D.9H
20、用一条指令实现将寄存器BX和SI的内容相加,结果并送入AX中,这条指令是()
A.ADD AX,[BX][ST]
B.MOV AX,[BX][ST]
C. LEA AX, [BX][SI]
D. AND AX, [BX][SI]
1、A
2、B
3、B
4、C
5、A
6、D
7、B
8、A
9、D 10、A 11、C 12、B 13、A 14、C 15、B 16、D 17、C 18、B 19、A 20、D
程序分析
1.某数据段的起始定义如下:
ORG 0030H
DA1 DB 0,'0',30H
DW DA1
数据为3000H字存储单元的偏移地址是____30H ______
2.若有如下指令和伪指令序列:
DA1 EQU BYTE PTR DA2
DA2 DW 0ABCDH

SHL DA1,1
SHR DA2,1
上述指令序列执行后,DA2字存储单元的内容是____55CDH _______
4. 阅读程序回答问题
STRING DB …ABCDEFGHIJ''
MOV AH,01 ;从键盘输入字符1~9之间的一个数字
INT 21H
AND AL,0FH
DEC AL
XOR AH,AH
MOV BX,OFFSET STRING
ADD BX,AX
MOV BL,[BX]
MOV AH,02H ;显示输出
INT 21H
试回答:(1)上述程序段的功能是什么?
根据从键盘输入的字符…1‟~…9‟,确定在显示器上显示STRING中第几个字符。

(2)如从键盘输入字符'4',程序段有什么结果?
显示器显示字符…D‟
5. 阅读程序回答问题
AND AL,AL
JZ BRCH1
RCR AL,1
JZ BRCH2
RCL AL,1
INC AL
JZ BRCH3
上述程序运行后,试回答:
(1)当(AL)=_____0_____时,程序转向BRCH1
(2)当(AL)=_____1_____时,程序转向BRCH2
(3)当(AL)=_____-1_____时,程序转向BRCH3
6.有如下宏指令:
LEAP MARCO COND,LAB
J&COND LAB
ENDM
宏调用如下:
……
SUB AX,BX
LEAP Z, THERE
MOV DX,0
JMP RET
THERE:MOV DX,1
RET:……
回答以下问题:
(1)若AX=1234H,BX=1234H,DX=__1__;
(2)若AX=1234H,BX=1111H,DX=__0__。

7.设AX=1000H
NEG AX
NOT AX
执行上述指令后,AX的结果是__0FFFH__
程序设计
1.试编写一程序段,在CHAR为首址的26个字节单元中依次存放字母'A'~'Z'。

char db 26 dup(?)
...
start: lea bx,char
mov al,'A'
mov cx,26
lop1: mov [bx],al
inc al
inc bx
loop lop1。

相关文档
最新文档