汇编语言程序设计习题及参考答案
单项选择题
从每小题的四个备选答案中,选出一个正确答案,并将正确答案的番号填人括号内。
1.用来存放下一条将要执行的指令地址的寄存器是 (B )
A.SP B.IP C.BP D.CS
2.要使串处理从低地址向高地址进行,应把标志位置为 (D )
A.IF=1 B.TF=0
C.DF=1 D.DF=0
3.使状态标志位CF清零的错误指令是 (C )
A.OR AX,AX B.SUB AX,AX
C.MOV CF,0 D.CLC
4.设SP=1110H,执行PUSH AX指令后,SP的内容为 (B )
A.SP=1112H B.SP=110EH
C.SP=1111H D.SP=110FH
5.汇编源程序出现语法错误的指令有 (D )
A.MOV [BX+SI],AL B. MOV AX,[BP+DI]
C.MOV DS,AX D. MOV CS,AX
6.下列串操作指令中,必须同时指明源串和目的串地址的指令是 (D )
A.STOSW B.LODSW
C.SCASW D.CMPSW
7.设BL中有一无符号数,实现把BL中的数乘以2,应选用的指令是 (B )
A.SHR BL,1 B.SHL BL,1
C.SAR BL,1 D.RCR BL,1
8.执行PUSH AX指令的正确步骤是 (A )
A.1.SP←SP-1,(SP)←AH B.1.(SP)←AH,SP←SP-1
2.SP←SP-1,(SP)←AL 2.(SP)←AL,SP←SP-1
C.1.SP←SP+1,(SP)←AH D.1.(SP)←AH,SP←SP+1
2.SP←SP+1,(SP)←AL 2.(SP)←AL,SP←SP+1
9.CF=1 时转移到目标地址的条件转移指令是 (B )
A.JNC B.JC C.JZ D.JS
10.在执行NEG指令时,对标志位CF有影响,其影响的规则是 ( C )
A.对正数求补时,CF=0 B.对负数求补时,CF=0
C.对非零数求补时,CF=1 D.对零求补时,CF=1
11.算术右移SAR和逻辑右移SHR两条指令执行后结果完全相同的情况是(A )
A.目的操作数最高位为0 B.目的操作数最高位为1
C.目的操作数为任意情况 D.无论什么情况都不可能相同
12.设AL=04H,BL=0F8H,执行IMUL BL指令后,结果是 ( D )
A.AX=0032H B.AX=00E0H
C.AX=03E0H D.AX=0FFE0H
13.指令的操作数中,允许出现表达式,例如BUF1与BUF2均为变量名,下面指令中语法正确的是 (D )
A.MOV AX,BUFl*BUF2
B.MOV AX,BUF1/BUF2
C.MOV AX,BUF1+ES:BUF2
D.MOV AX,BUF2-BUF1
14.下面指令中,操作数的寻址方式为寄存器间接寻址的指令是 (C )
A.INC WORD PTR [BX+SI]
B.INC CX,[SI+COUNT]
C.NEG BYTE PTR [BX]
D.ADD AX,B
15.NUM EQU 80H
DA DB 34H
AND DA,NUM
上述语句执行后,DA中的内容是 (D )
A.0B4H B.80H C.34H D.0
16.直接、间接、立即三种寻址方式指令的执行速度,由快至慢的排序为 (A )
A.立即、直接、间接 B.直接、间接、立即
C.直接、立即、间接 D.不一定
17.语句DA1 DB 2 DUP(3,5,7)汇编后,该语句可等同于的语句是 (D )
A.DA1 DB 3,5,7
B.DA1 DB 2,3,5,7
C.DA1 DB 3,5,7,2
D.DA1 DB 3,5,7,3,5,7
18. MOV AL,80H