最新微机原理第3章习题与答案_第3章微机原理习题库

2020-02-28 其他范文 下载本文

最新微机原理第3章习题与答案由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“第3章微机原理习题库”。

习题

一、选择题

1.寻址方式指出了操作数的位置,一般来说_______。A.立即寻址给出了操作数的地址

B.寄存器直接寻址的操作数在寄存器内,而指令给出了存储器 C.直接寻址直接给出了操作数本身

D.寄存器直接寻址的操作数包含在寄存器内,由指令指定寄存器的名称 答案:D 2.寄存器寻址方式中,操作数在_________。A.通用寄存器 答案:A 3.寄存器间接寻址方式中,操作数在_________。A.通用寄存器 答案:C 4.下列指令中的非法指令是______。A.MOV [SI+BX], AX C.MOV [0260H], 2346H 答案:B 5.设(SP)=0100H,(SS)=2000H,执行PUSH BP指令后,栈顶的物理地址是_____。A.200FEH 答案:A 6.指令LEA BX, TAB执行后,其结果是______。A.将TAB中内容送BX 答案:C 7.下列正确的指令格式有______。A.MOV [BX], 1 答案:D 8.设(AX)=C544H,在执行指令ADD AH,AL之后,______。A.CF=0,OF=0 答案:C 9.若AL、BL中是压缩BCD数,且在执行ADD AL, BL之后,(AL)=0CH,CF=1,AF=0。B.CF=0,OF=1

C.CF=1,OF=0

D,CF=1,OF=1 B.MOV AL, 0345H

C.MOV ES: PTR[CX], 3

D.XLAT

B.将TAB的段基址送BX

D.将TAB所指单元的存储内容送BX C.将TAB的偏移地址送BX B.0102H

C.20102H

D.00FEH

B.MOV CL, 280 D.MOV BX, [BX] B.堆栈

C.内存单元

D.段寄存器 B.堆栈

C.内存单元

D.段寄存器 再执行DAA后,(AL)=_____。A.02H 答案:B 10.执行下列程序后AL的内容为_____。MOV AL, 25H SUB AL, 71H DAS A.B4H 答案: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

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 B.REP LODSB

C.REP STOSB

D.REPE SCASB 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 B.43H

C.54H

D.67H B.12H

C.62H

D.72H 也可用指令_______完成同样的功能。A.REP MOVSB 答案:A 16.JMP WORD PTR [DI] 是________指令。A.段内间接转移

答案:A 17.条件转移指令JNE的转移条件是_______。A.ZF=1 答案:C 18.下列指令中,影响标志位的指令是_____。A.从存储器取数指令

答案:D 19.假设外部设备的状态字已经读入AL寄存器,其中最低位为0,表示外部设备忙。为了判断外部设备是否忙而又不破坏其它状态位,应选用下列哪一组指令? A.RCR AL, 01H

B.CMP

AL, 00H

B.条件转移指令

C.压栈指令

D.循环移位指令 B.CF=0

C.ZF=0

D.CF=1 B.段内直接转移 C.段间间接转移

D.段间直接转移 JZ JZ Label Label

JZ JZ

Label AL, 01H Label C.AND 答案:D AL, 01H D.TEST 20.假定一组相邻字节的首地址在BX中,末地址在DI中,为了使下面的程序段能用来查找出其中第一个非零字节,并把它存放在AL中,在横线处应填入的指令是什么? SUB INC MOV DI, BX DI CX, DI _________ NEXT: INC BX CMP LOOP MOV 答案:C 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 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,(AX)=_______(OF)=_______(CF)=_______ 而执行指令IMUL BL后,(AX)=_______(OF)=_______(CF)=_______ 答案:0AB0H 0F8B0H

BL 1 1

1.若执行指令MUL BL后,16.已知(AL)=6,(BL)=7, 执行下述指令后,(AL)=______ MUL AAM 答案:02H 17.CBW指令是将_____的符号扩展到_____中,如果(AL)=0A4H,则执行CBW指令后,(AX)=______。

答案:AL

AH 0FFA4H 18.执行下列程序段后,给出指定寄存器的内容。XOR DEC MOV NEG AX, AX AX BX, 6378H BX XCHG AX, BX AX 和BX寄存器的内容为_______。答案:6378H和0001H 19.执行下列指令后: MOV MOV ROL DEC MOV MUL HLT 寄存器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

03FDH 22.假设ES段中有一个字符串’12FG3LM5C’,其名为ARRAY。下面的程序段执行后CX的值是______。CLD LEA MOV MOV HLT 答案:5 23.假设(DS)=2000H,(BX)=1256H,(SI)=528FH,位移量TABLE=20A1H,(232F7H)=80H,(232F8H)=32H,(264E5H)=50H,(264E6H)=24H: 执行指令 JMP BX 后,(IP)=_________。DI, ES:ARRAY AL, ‘G’ CX, 9 AX, 1234H CL, 4 AX, CL AX CX, 4 CX REPNE SCASB 执行指令 执行指令 JMP TABLE[BX]后,(IP)=_______。JMP [BX][SI] 后,(IP)=_______。

2450H 答案:1256H

3280H MOV PUSH MOV PUSH CALL.....L1:......RET 2 答案:00FEH AX, N1 AX AX, N2 AX L1 24.已知(SS)=3000H,(SP)=0100H,执行下列程序后,(SP)=_______。

25.已知(IP)=1000H,(SP)=2000H,(BX)=283FH, 指令CALL WORD PTR [BX] 的机器代码是FF17H, 试问执行该指令后,内存单元1FFEH中的内容是______。答案:02H

三、问答题

1.设DS=1000H,ES=3000H,SS=4000H,SI=00A0H,BX=0700H,BP=0070H,执行指令为MOV AX, [BX+5]。

(1)指令使用的是何种寻址方式?

(2)源数据的逻辑地址和物理地址分别是多少?

(3)若源数据为1234H,则执行指令后上述各寄存器的内容是什么?

答案:基址寻址,基址寄存器是BX,源操作数在数据段中,源操作数的逻辑地址是: EA=BX+5=0700H+5=0705H 源操作数的物理地址是:10705H 若源数据为1234H,则执行指令后,AX中的内容就为1234H,其余寄存器的内容不变。2.分别说明下列指令的源操作数和目的操作数各采用什么寻址方式,并写出指令中存储器操作数的物理地址的计算公式。(1)MOV AX, 2408H(2)MOV BX, [SI](3)MOV [BP+100H],AX(4)MOV [BX+DI], '$'(5)MOV DX, ES:[BX+SI] 答案:

(1)立即寻址,(AX)=2408H(2)寄存器寻址,物理地址:10H×(DS)+EA=10H×(DS)+(SI)(3)寄存器寻址,物理地址:10H×(SS)+(BP)+0100H(4)基址加变址寻址,物理地址:10H×(DS)+(BX)+(DI)(5)基址加变址,带有段超越前缀,物理地址:10H×(ES)+(BX)+(SI)3.写出能完成下述操作的指令。(1)将立即数1234H送至DS寄存器。(2)将存储单元3000H和内容送至4000H单元。(3)将累加器AX与寄存器CX中的内容对调。答案:

(1)MOV AX, 1234H MOV DS, AX(2)MOV AX, [3000H] MOV [4000H], AX(3)XCHG AX, CX 4.编程:将数据段中以BX为偏移地址的连续4单元的内容颠倒过来。答案: MOV AL, [BX] XCHG AL, [BX+3] MOV [BX], AL MOV AL,[BX+1] XCHG AL, [BX+2] MOV [BX+1], AL 5.已知(DS)=091DH,(SS)=(1E4AH),(AX)=1224H,(BX)=0024H,(CX)=5678H,(BP)=0024H,(SI)=0012H,(DI)=0032H,(09214H)=085BH,(09226H)=00F6H,(09228H)=1E40H,(1E4F6H)=091DH。试问下列指令或指令段执行后结果如何?(1)MOV CL, [BX+20H](2)MOV [BP][DI], CX(3)LEA BX, [BX+20H][SI] MOV AX, [BX+2](4)LDS SI, [BX][DI] MOV BX,[SI](5)XCHG CX, [BX+32H] XCHG [BX+20H][SI], AX 答案:(1)CL=5BH(2)(1E4F6H)=5678H(3)(AX)=1E40H(4)(BX)=091DH(5)(AX)=5678H,(09226H)=1224H 6.十六进制0~9,A~F对应的ASCII码为30H~39H,41H~46H,依次放在内存以TABLE开始的区域,将AL中某一位十六进制数×H转换为对应的ASCII码,请编写程序段。答案:

LEA BX, TABLE MOV AL, ××H XLAT 7.将AX寄存器清零有4种方法,试写出这4条指令。

答案:MOV AX, 00H

SUB AX, AX

AND AX, 00H

XOR AX, AX 8.使用一条逻辑运算指令实现下列要求:(1)使AL高4位不变,低4位为0。(2)使AL最高位置1,后7位不变。(3)使AL中的bit3、bit4变反,其余位不变。(4)测试判断CL中的bit2、bit5、bit7是否都为1。答案:

(1)AND AL, 0F0H(2)OR AL, 80H(3)XOR AL 18H(4)TEST AL, 0A4H 9.试分析下面的程序段完成什么功能。MOV CL, 4 SHL AX, CL SHL BL, CL MOV AL, BL SHR DH, CL OR AL, DH 答案:将AX中间8位,BX的低4位,DX的高4位组成一个新字存放在AX中。10.若要将源串100个字节数据传送到目标串单元中去,设源串首址的偏移地址为2500H,目标串首址的偏移地址为1400H,请编写程序实现以下功能。(1)完成源串到目标串的搬移。

(2)比较两串是否完全相同,若两串相同,则BX寄存器内容为0;若两串不同,则BX指向源串中第一个不相同字节的地址,且该字节的内容保留在AL的寄存器中。答案:(1)CLD MOV CX, 100 MOV SI, 2500H MOV DI, 1400H REP MOVSB(2)CLD MOV CX, 100 MOV SI, 2500 MOV DI, 1400 REPE CMPSB JZ EQQ DEC SI MOV BX, SI MOV AL, [SI] JMP STOP EQQ: MOV BX, 0 STOP: HLT 11.下列指令段的功能是:从内存2000H:0A00H开始的2KB内存单元清零。请在下列空格中填入合适的指令,程序指令完成后DI的内容是多少。CLD MOV AX, 2000H _________ _________ XOR AL, AL _________ _________ HLT 答案:MOV ES,AX MOV DI, 0A00H XOR AL,AL MOV CX, 800H REP STOSB HLT

《最新微机原理第3章习题与答案.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
最新微机原理第3章习题与答案
点击下载文档
相关专题 第3章微机原理习题库 微机 习题 原理 第3章微机原理习题库 微机 习题 原理
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文