微机原理第3章习题与答案
- 格式:doc
- 大小:61.50 KB
- 文档页数:9
习题
一、选择题
1.寻址方式指出了操作数的位置,一般来说_______。
A.立即寻址给出了操作数的地址
B.寄存器直接寻址的操作数在寄存器内,而指令给出了存储器
C.直接寻址直接给出了操作数本身
D.寄存器直接寻址的操作数包含在寄存器内,由指令指定寄存器的名称
答案:D
2.寄存器寻址方式中,操作数在_________。
A.通用寄存器 B.堆栈 C.内存单元 D.段寄存器
答案:A
3.寄存器间接寻址方式中,操作数在_________。
A.通用寄存器 B.堆栈 C.内存单元 D.段寄存器
答案:C
4.下列指令中的非法指令是______。
A. MOV [SI+BX], AX B.MOV CL, 280
C.MOV [0260H], 2346H D.MOV BX, [BX]
答案:B
5.设(SP)=0100H,(SS)=2000H,执行PUSH BP指令后,栈顶的物理地址是_____。
A.200FEH B.0102H C. 20102H D.00FEH
答案:A
6.指令LEA BX, TAB执行后,其结果是______。
A.将TAB中内容送BX B.将TAB的段基址送BX
C.将TAB的偏移地址送BX D.将TAB所指单元的存储内容送BX
答案:C
7.下列正确的指令格式有______。
A.MOV [BX], 1 B.MOV AL, 0345H C.MOV ES: PTR[CX], 3 D. XLAT
答案:D
8.设(AX)=C544H,在执行指令ADD AH,AL之后,______。
A.CF=0,OF=0 B.CF=0,OF=1 C.CF=1,OF=0 D,CF=1,OF=1
答案:C
9.若AL、BL中是压缩BCD数,且在执行ADD AL, BL之后,(AL)=0CH,CF=1,AF=0。再执行DAA后,(AL)=_____。
A.02H B.12H C.62H D.72H
答案:B
10.执行下列程序后AL的内容为_____。
MOV AL, 25H
SUB AL, 71H
DAS
A.B4H B.43H C.54H D.67H 答案:C
11.下列四条指令中,需要使用DX寄存器的指令是______。
A.MUL BX B.DIV BL C.IN AX, 20H D.OUT 20H, AL
答案:C
12.设(AL)=0E0H,(CX)=3,执行RCL AL, CL指令后,CF的内容_______。
A.0 B.1 C.不变 D.变反
答案:B
13.下列四条指令中,错误的是______。
A.SHL AL, CX B.XCHG AL, BL C.MOV BX, [SI] D.AND AX, BX
答案: A
14.串操作指令中,有REP前缀的串操作指令结束的条件是________。
A.ZF=1 B.ZF=0 C.CX>0 D.CX=0
答案:D
15.对于下列程序段:
AGAIN: MOV AL, [SI]
MOV ES:[DI], AL
INC SI
INC DI
LOOP AGAIN
也可用指令_______完成同样的功能。
A.REP MOVSB B.REP LODSB C.REP STOSB D.REPE SCASB
答案:A
16.JMP WORD PTR [DI] 是________指令。
A.段内间接转移 B.段内直接转移 C.段间间接转移 D.段间直接转移
答案:A
17.条件转移指令JNE的转移条件是_______。
A. ZF=1 B.CF=0 C.ZF=0 D.CF=1
答案:C
18.下列指令中,影响标志位的指令是_____。
A.从存储器取数指令 B.条件转移指令 C.压栈指令 D.循环移位指令
答案:D
19.假设外部设备的状态字已经读入AL寄存器,其中最低位为0,表示外部设备忙。为了判断外部设备是否忙而又不破坏其它状态位,应选用下列哪一组指令?
A. RCR AL, 01H B. CMP AL, 00H
JZ Label JZ Label
C. AND AL, 01H D. TEST AL, 01H
JZ Label JZ Label
答案:D
20.假定一组相邻字节的首地址在BX中,末地址在DI中,为了使下面的程序段能用来查找出其中第一个非零字节,并把它存放在AL中,在横线处应填入的指令是什么?
SUB DI, BX
INC DI MOV CX, DI
_________
NEXT: INC BX
CMP BYTE PTR [BX], 0
LOOP NEXT
MOV AL, BYTE PTR [BX]
A.MOV SI, CX B.SUB BX, BX C.DEC BX D.INC BX
答案:C
二、填空题
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 30000H~300FFH 300FEH A6H
3.若 (BX)=42DAH,则下列指令段
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中为带符号数,则指令执行前_______寄存器中的数大。
答案: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, 若执行指令MUL BL后,
(AX)=_______
(OF)=_______
(CF)=_______
而执行指令IMUL BL后,
(AX)=_______
(OF)=_______
(CF)=_______
答案:0AB0H 1 1
0F8B0H 1 1.
16.已知(AL)=6, (BL)=7, 执行下述指令后,(AL)=______
MUL BL
AAM
答案:02H
17.CBW指令是将_____的符号扩展到_____中,如果(AL)=0A4H,则执行CBW指令后,(AX)=______。
答案:AL AH 0FFA4H
18.执行下列程序段后,给出指定寄存器的内容。
XOR AX, AX
DEC AX
MOV BX, 6378H
XCHG AX, BX
NEG BX
AX 和BX寄存器的内容为_______。
答案:6378H和0001H
19.执行下列指令后: