答案:C
11.下列四条指令中,需要使用 DX 寄存器的指令是______。 A.MUL BX 答案:C
12.设(AL)=0E0H,(CX)=3,执行 RCL AL, CL 指令后,CF 的内容_______。 A.0 答案:B 13.下列四条指令中,错误的是______。 A.SHL AL, CX 答案: A
14.串操作指令中,有 REP 前缀的串操作指令结束的条件是________。 A.ZF=1 答案:D
15.对于下列程序段: AGAIN: MOV AL, [SI] MOV ES:[DI], AL INC INC SI DI B.ZF=0 C.CX>0 D.CX=0 B.XCHG AL, BL C.MOV BX, [SI] D.AND AX, BX B.1 C.不变 D.变反 B.DIV BL C.IN AX, 20H D.OUT 20H, AL LOOP AGAIN 也可用指令_______完成同样的功能。 A.REP MOVSB 答案:A
16.JMP WORD PTR [DI] 是________指令。 A.段内间接转移 答案:A 17.条件转移指令 JNE 的转移条件是_______。 A. ZF=1 答案:C
18.下列指令中,影响标志位的指令是_____。 A.从存储器取数指令 答案:D
19.假设外部设备的状态字已经读入 AL 寄存器,其中最低位为 0,表示外部设备忙。为了判 断外部设备是否忙而又不破坏其它状态位,应选用下列哪一组指令? A. C. RCR JZ AND JZ 答案:D
20.假定一组相邻字节的首地址在 BX 中,末地址在 DI 中,为了使下面的程序段能用来查找 出其中第一个非零字节,并把它存放在 AL 中,在横线处应填入的指令是什么? SUB INC DI, BX DI AL, 01H Label AL, 01H Label D. B.
CMP JZ TEST JZ AL, 00H Label AL, 01H
Label B.条件转移指令 C.压栈指令 D.循环移位指令 B.CF=0 C.ZF=0 D.CF=1 B.段内直接转移 C.段间间接转移 D.段间直接转移 B.REP LODSB C.REP STOSB D.REPE SCASB MOV NEXT: CMP LOOP MOV 答案:C CX, DI
INC BX BYTE PTR [BX], 0
NEXT AL, BYTE PTR [BX] B.SUB BX, BX C.DEC BX D.INC BX _________ A.MOV SI, CX
二、填空题
1.指令 MOV [BX+SI], AL 中的目的操作数使用______段寄存器,属于______寻址方式。 答案:数据段 基址加变址
2.8086 微机中,_______寄存器存放的是当前堆栈区的基地址。堆栈区的存取原则为_____, 在 8086/8088 系统中,栈区最大容量为_____。若(CS)=2000H,(DS)=2500H,(SS)=3000H, (ES)=3500H,(SP)=0100H,(AX)=2FA6H,则这个栈区的物理地址的范围为________,CPU 执行 PUSH AX 指令后,栈顶地址为_____,该栈顶单元存放的内容为_______。 答案:SS 先进后出 64KB PUSH BX POPF 指令执行完毕后,(SF, ZF, CF, OF)=______。 答案:7531H, 1,1,0,0
4.假设(DS)=1000H, (ES)=0200H, (BP)=0100H, (DI)=0200H, (10200H)=11H, (10201H)=12H, 执行指令 LEA DX, [BP][DI]后,(DX)=_______。 答案: 0300H
5.假定(DS)=4000H, (DI)=0100H, (40100H)=55H, (40101H)=AAH, 执行指令 LEA BX, [DI] 后,BX 中的内容是_______。 答案:0100H
6. 如果 TABLE 为数据段 3400H 单元的符号名, 其中存放的内容为 0505H, 当执行指令 MOV AX, TABLE 后,(AX)=_______;而执行指令 LEA AX, TABLE 后,AX=______。 答案:0505H,3400H
7. 若(DS)=3000H,(SI)=2000H,(DI)=1000H,(AX)=2500H,(34000H)=00H,(34001H)=34H, (34002H)=00H, (34003H)=50H, 变量 AREA 的值为 3000H, 执行指令 LDS SI, AREA[DI]后, SI 的内容是_______,DS 的内容是_______。 答案:3400H,5000H
8.已知(AL)=2EH, (BL)=6CH, 执行 ADD AL, BL 之后, (AL)=_____, (BL)=______, ZF=_____, AF=______,OF=_______,PF=_____,CF=______。 答案:9AH 6CH 0,1,1,1,0
9.CPU 对两个无符号 8 位二进制数进行加法运算后,结果为 0EH,且标志位 CF=1,OF=1, SF=0,其结果应为十进制数______。 答案:270
10.8086CPU 执行 SUB AH, AL 后结果为(AH)=85H,OF=1,CF=1。若 AH、AL 中为带符号 30000H~300FFH 300FEH A6H 3.若 (BX)=42DAH,则下列指令段数,则指令执行前_______寄存器中的数大。 答案:AH
11.若(AX)=7531H,(BX)=42DAH,则 CMP AX, BX 指令执行后,(AX)=_____,(SF, ZF, CF, OF)=_______。 答案:42DAH 1,0,0,0
12.设(AL)=1010 0000B,则执行 NEG AL 后,(AL)=________;设(AL)=1000 0000B,则执行 NEG AL 后,(AL)=________。 答案:60H 80H
13.假定(AX)=96H, (BX)=65H, 依次执行 ADD AX, BX 指令和 DAA 指令后,(AL)=___。 答案:61H
14.执行下列指令序列后,(AH)=____,(AL)=_____,CF=____,AF=____。 MOV AX, 0106H MOV BL, 08H SUB AL, BL AAS 答案:(AL)=08H,(AH)=0,CF=AF=1
15.设(AL)=98H,(BL)=12H, (AX)=_______ (OF)=_______ (CF)=_______ 而执行指令 IMUL BL 后, (AX)=_______ (OF)=_______ (CF)=_______ 答案:0AB0H 0F8B0H MUL AAM 答案:02H
17.CBW 指令是将_____的符号扩展到_____中,如果(AL)=0A4H,则执行 CBW 指令后, (AX)=______。
答案:AL XOR DEC MOV XCHG NEG AH 0FFA4H
18.执行下列程序段后,给出指定寄存器的内容。 AX, AX AX BX, 6378H AX, BX BX BL 1 1 1. 1 若执行指令 MUL BL 后,
16.已知(AL)=6, (BL)=7, 执行下述指令后,(AL)=______ AX 和 BX 寄存器的内容为_______。 答案:6378H 和 0001H
19.执行下列指令后: MOV MOV ROL DEC MOV MUL HLT AX, 1234H CL, 4 AX, CL AX CX, 4 CX 寄存器 AH 的值是______,AL 的值是 _____。 答案:8DH 00H
20.假设(DX)=10111001B,(CL)=03H,CF=1,执行 SHL DL, CL 后,(DX)=_____。 答案:10111001000B
21.下列指令段执行完毕后,(SI)=_______,(DI)=______。 STD MOV AX, 2500H MOV DS, AX MOV BX, 3500H MOV ES, AX MOV SI, 1500H MOV DI, 0400H MOV CX, 3 REP MOVSB 答案:14FDH
22.假设 ES 段中有一个字符串?12FG3LM5C? ,其名为 ARRAY。下面的程序段执行后 CX的值是______。 REPNE SCASB 24.已知(SS)=3000H, (SP)=0100H,执行下列程序后,(SP)=_______。 答案:5
23.假设(DS)=2000H,(BX)=1256H,(SI)=528FH,位移量 TABLE=20A1H,(232F7H)=80H, (232F8H)=32H,(264E5H)=50H,(264E6H)=24H: 执行指令 执行指令 执行指令 答案:1256H 3280H 2450H 24.
答案:00FEH
25.已知(IP)=1000H, (SP)=2000H, (BX)=283FH, 指令 CALL WORD PTR [BX] 的机器代码是 FF17H, 试问执行该指令后,内存单元 1FFEH 中的内容是______。 答案:02H 三、问答题