第三章微机原理习题答案

合集下载

微机原理与接口技术第三章试题及答案

微机原理与接口技术第三章试题及答案

第三章3-1选择题1、MOVX A,@DPTR指令中源操作数的寻址方式是(B)(A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址2.ORG 0003HLJMP 2000HORG 000BHLJMP 3000H 当CPU响应外部中断0后,PC的值是(B)(A)0003H (B)2000H (C)000BH (D)3000H3.执行PUSH ACC指令,MCS-51完成的操作是(A)(A)SP+1 SP (ACC)(SP)(B)(ACC)(SP)SP-1 SP(B)(C)SP-1 SP (ACC)(SP) (D)(ACC)(SP)SP+1 SP4、LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=(D)(C)2000H (B)2001H (C)2002H (D)2003H5、51执行完MOV A,#08H后,PSW的一位被置位(D)(A)(A)C (B)F0 (C)OV (D)P6、下面条指令将MCS-51的工作寄存器置成3区(B)(A)MOV PSW,#13H (B)MOV PSW,#18H(B)SETB PSW.4 CLR PSW.3 (d) SETB PSW.3 CLR PSW.47、执行MOVX A,DPTR指令时,MCS-51产生的控制信号是(C)(D)/PSEN (B)ALE (C)/RD (D)/WR8、MOV C,#00H的寻址方式是(A)(A)位寻址(B)直接寻址(C)立即寻址(D)寄存器寻址9、ORG 0000HAJMP 0040HORG 0040HMOV SP,#00H当执行完左边的程序后,PC的值是(C)(A)0040H (B)0041H (C)0042H (D)0043H10、对程序存储器的读操作,只能使用(D)(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令3-2判断题。

4.MCS-51的相对转移指令最大负跳距是127B。

李伯成《微型计算机原理及应用》课后习题答案

李伯成《微型计算机原理及应用》课后习题答案

李伯成《微机原理》习题第三章3.1MOV AX,00H;立即寻址SUB AX,AX;寄存器寻址MOV AX,[BX];寄存器间接寻址MOV AX,TABLE;直接寻址MOV AL,ARAY1[SI];寄存器相对寻址MOV AX,[BX+6];寄存器相对寻址3.2若1KB的数据存放在TABLE以下,试编写程序将该数据拌到NEXT之下。

程序片段如下:ORG 100hMOV CX,03FFH;数据个数LEA SI,TABLE;源区首地址LEA DI,NEXT;目的区首地址AGAIN: MOV AL,[SI];MOV [DI],AL;搬移INC SIINC DI;移动地址指针DEC CX;循环计数器递减JNZ AGAIN;循环未结束转HLT;暂停TABLE DB 1024 dup ('A');源数据区NEXT DB 1024 dup (0);目的数据区3.3编写10个字(16位二进制数)之和的程序ORG 100hLEA SI,ADD1;LEA DI,ADD2;LEA BX,SUM;MOV CL,CONT;MOV CH,0; 循环初始化CLC;进位清零MADD1: MOV AX,[SI];读加数1ADC AX,[DI]ADD SI,2;移动源区地址指针ADD DI,2;移动目的区地址指针MOV [BX],AX;回存计算结果ADD BX,2;移动“和”存储区地址指针LOOP MADD1;循环控制HLT;暂停ADD1 DB 0FEH,86H,7CH,44h,56H,1FH,24H,01H,02H,33H;加数1ADD2 DB 56H,49H,4EH,0FH,9CH,22H,45H,11H,45H,21H;加数2SUM DB 10 DUP (0);和存储单元CONT DB 5 ;循环次数3.4 某16位二进制数,放在DATA连续的两个单元中,试编程求其平方根和余数,将其分别存放在ANS 和REMAIN中。

微机原理第三章作业答案

微机原理第三章作业答案

3.1 简要分析8086的指令格式由哪些部分组成,什么是操作码?什么是操作数?寻址和寻址方式的含义是什么?8086指令系统有哪些寻址方式?【解答】8086的指令格式由操作码和操作数字段组成。

操作码:要完成的操作。

操作数:参与操作的对象。

寻址:寻找操作数或操作数地址的过程。

寻址方式:指令中给出的找到操作数或操作数地址采用的方式。

8086指令系统的寻址方式主要有立即数寻址、寄存器寻址、存储器寻址和I/O端口寻址。

其中,存储器寻址可进一步分为直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、相对基址变址寻址;I/O端口指令IN和OUT使用的端口寻址方式有直接寻址和间接寻址。

3.2 设(DS)=2000H,(ES)= 2100H,(SS)= 1500H,(SI)= 00A0H,(BX)= 0100H,(BP)= 0010H,数据变量VAL的偏移地址为0050H,请指出下列指令的源操作数字段是什么寻址方式?它的物理地址是多少?(1) MOV AX,21H (2) MOV AX,BX (3) MOV AX,[1000H](4) MOV AX,VAL (5) MOV AX,[BX] (6) MOV AX,ES:[BX](7) MOV AX,[BP] (8) MOV AX,[SI] (9) MOV AX,[BX+10](10) MOV AX,VAL[BX] (11) MOV AX,[BX][SI] (12) MOV AX,VAL[BX][SI]【解答】(1)MOV AX,21H立即寻址,源操作数直接放在指令中(2)MOV AX,BX寄存器寻址,源操作数放在寄存器BX中(3)MOV AX,[1000H]直接寻址,EA = 1000H,PA =(DS)×10H+EA = 2000H×10H+1000H = 21000H(4)MOV AX,VAL直接寻址,EA = [V AL] = 0050H,PA =(DS)×10H+EA = 2000H×10H+0050H = 20050H(5)MOV AX,[BX]寄存器间接寻址,EA =(BX)= 0100H,PA =(DS)×10H+EA = 2000H×10H+0100H = 20100H(6)MOV AX,ES:[BX]寄存器间接寻址,EA =(BX)= 0100H,PA =(ES)×10H+EA = 2100H×10H+0100H = 21100H(7)MOV AX,[BP]寄存器间接寻址,EA =(BP)= 0010H,PA =(SS)×10H+EA = 1500H×10H+0010H = 15010H(8)MOV AX,[SI]寄存器间接寻址,EA =(SI)= 00A0H,PA =(DS)×10H+EA = 2000H×10H+00A0H = 200A0H(9)MOV AX,[BX+10]相对寄存器寻址,EA =(BX)+10D = 0100H+000AH= 010AH,PA =(DS)×10H+EA = 2000H×10H+010AH = 2010AH(10)MOV AX,VAL[BX]相对寄存器寻址,EA =(BX)+[V AL]= 0100H+0050H= 0150H,PA =(DS)×10H+EA = 2000H×10H+0150H = 20150H(11)MOV AX,[BX][SI]基址变址寻址,EA = (BX)+(SI)= 0100H+00A0H = 01A0H,PA = (DS)×10H +EA = 2000H×10H+01A0H = 201A0H(12)MOV AX,VAL[BX][SI]相对基址变址寻址,EA = (BX)+(SI)+[V AL]= 0100H+00A0H+0050H = 01F0H,PA =(DS)×10H+EA = 2000H×10H+01F0H = 201F0H3.3 给定寄存器及存储单元的内容为:(DS) = 2000H,(BX) = 0100H,(SI) = 0002H,(20100) = 32H,(20101) = 51H,(20102) = 26H,(20103) = 83H,(21200) = 1AH,(21201) = B6H,(21202) = D1H,(21203) = 29H。

微机原理第三章习题参考答案

微机原理第三章习题参考答案

第三章2、对于下列存储容量的存储器芯片⑴Intel 2114(1K×4bit)⑵Intel 2167(16K×1bit)⑶Zilog 6132(4K×8bit)各需要多少条地址线寻址?需要多少条数据线?若要组成64K×8bit的存储器,选同一芯片各需要几片?答:存储器芯片的存储容量=存储单元个数×每个存储单元存放的二进制信息位数。

存储单元个数决定了存储器芯片的地址线条数,地址线条数N=㏒2(存储单元个数),每个存储单元存放的二进制信息位数决定了存储器芯片的数据线条数,数据线条数M=每个存储单元存放的二进制信息位数。

∴⑴Intel 2114(1K×4bit)芯片,需要N=㏒2(210)=10条地址线寻址,需要M=4条数据线。

⑵Intel 2167(16K×1bit)芯片,需要N=㏒2(214)=14条地址线寻址,需要M=1条数据线。

⑶Zilog 6132(4K×8bit)芯片,需要N=㏒2(212)=12条地址线寻址,需要M=8条数据线。

若要组成64K×8bit的存储器,选上述同一芯片,则:⑴选Intel 2114(1K×4bit)芯片,需要64K×8bit÷(1K×4bit)=64×2 =128片;即位扩展需2片一组,字扩展需64组,共需128片。

⑵选Intel 2167(16K×1bit)芯片,需要64K×8bit÷(16K×1bit)=4×8 =32片;即位扩展需8片一组,字扩展需4组,共需32片。

⑶选Zilog 6132(4K×8bit)芯片,需要64K×8bit÷(4K×8bit)=16×1 =16片;即不需位扩展,字扩展需16组,共需16片。

3、用16K×4bit的SRAM芯片组成64K×8bit的存储器,要求画出该存储器组成的逻辑框图。

微机原理作业及答案第3章

微机原理作业及答案第3章

一、选择题1、CPU执行算术运算指令不会影响的标志为是_D__。

A.溢出标志 B.符号标志C.零标志 D.方向标志2、TEST指令和__A__指令执行同样的操作,但不送回操作结果,仅影响标志位。

A.AND B.ORC.NOT D.XOR3、下列指令中,影响标志位的指令是__D____。

A.从寄存器取数指令 B.条件转移指令C.压栈指令 D.循环移位指令4、执行指令INC AX后,不受影响的标志为__B___。

A.ZF B.CF C.SF D.OF5、当无符号数运算产生溢出时,__D__标志位为1.A.SF B.ZF C.CF D.OF6、若用户堆栈位于存储区10000H-1FFFFH,则该堆栈的段地址是___D____。

A.10000H B.1FFFFH C.1000H D.0FFFFH7、使用直接寻址方式时,操作数总是在 C 中。

A.通用寄存器B. 堆栈C. 主存单元D. 段寄存器8、指令MOV AX,[BP+SI]指令源操作数的段地址是 C 。

A. CSB. DSC. SSD. ES9、假定(AX)=96H,(BX)=65H,依此执行ADD AX,BX指令和DAA指令后,(AL)=___C_。

A.0FBH B.01H C.61H D.0BH10、设AX=C544H,在执行指令ADD AH,AL后, C 。

A. CF=0,OF=0B. CF=0,OF=1C.CF=1,OF=0D. CF=1,OF=111、由379AH得到FFFFH,可采用的逻辑运算是 D 。

A.与 B.或C.求反 D.或、异或二、填空题1.若物理地址为2D0H,偏移量为0B0H,则段地址为___22H_____。

2.8086指令系统中有_逻辑_移位和_算术_移位两类,其中__SHL__和SAL两条指令属于不同的移位指令,但其功能完全相同。

3.串操作指令规定目的操作数使用___DI___寄存器,目的串必须在__附加_段中。

4.在8086中进行寄存器间接寻址时,可采用的寄存器有____BX____、_BP_____、__SI______和__DI______。

(完整版)微机原理第三章(1)及答案

(完整版)微机原理第三章(1)及答案

第三章习题集二.选择题(每小题1分,共15分)1. 逻辑地址1000:2000对应的物理地址为( B )。

A、1200HB、12000HC、2100HD、21000H2. 下面哪个寄存器使用时的默认段寄存器为SS( C )。

A、AXB、BXC、SPD、SI3. 当使用BP寄存器作基址寻址时,若无指定段替换,则内定在( B )段内寻址。

A.程序B.堆栈C.数据D.附加4.在下面四组寄存器中,第 D 组都可用于对存储器间接寻址方式的寄存器。

A. AX,BX,CX,IP;B. BX,SP,DX,SIC. IP,SP,BP,AXD. BP,BX,SI,DI5. 含有立即数的指令中,该立即数被存放在 A 。

A. 累加器中B. 指令操作码后的内存单元中C. 指令操作码前的内存单元中D. 由该立即数所指定的内存单元中6. 用段基值及偏移量来指明内存单元地址的方式称为( C )。

A、有效地址B、物理地址C、逻辑地址D、相对地址7. 已知物理地址为0FFFF0H,且段内偏移量为0B800H,若对应的段基地址放在DS中,则DS=( B )。

A、0FFFFHB、0F47FHC、2032HD、0F000H8. 含有立即数的指令中,该立即数被存放在 B 。

A. 累加器中B. 指令操作码后的内存单元中C. 指令操作码前的内存单元中D. 由该立即数所指定的内存单元中9.寄存器间接寻址方式中,操作数在 C 中。

A. 通用寄存器B. 堆栈C. 存储单元D. 段寄存器10.下列指令中,有语法错误的指令是(B D)。

A. MOV AX,[1000H]B. LEA AL,1000HC. MOV [1000H],ALD. MOV 1000H,AX11. 下列指令语法有错的是:CA. MOV AX,1000HB. MOV AX,BXC. MOV [AX],[1000H]D. MOV AX,[1000H]12. 8086/8088中除___C___两种寻址方式外,其它各种寻址方式的操作数均在存储器中。

微机原理 第三章答案

微机原理 第三章答案

第三章作业1答案思考题:1、简述80C51的指令寻址方式。

答:80C51的指令寻址方式有:寄存器寻址、立即寻址、寄存器间址、直接寻址、变址寻址、相对寻址、位寻址2、访问特殊功能寄存器SFR,可使用哪些寻址方式?答SFR只能直接寻址3、若访问外部RAM单元,可使用哪些寻址方式?答:外间RAM单元,只能通过MOVX指令进行寄存器间接寻址。

4、若访问内部RAM单元,可使用哪些寻址方式?答:片内RAM低128字节,可直接寻址、寄存器间接寻址。

(只能使用R0, R1作为间址寄存器。

片内RAM20~2FH单元,可以位寻址。

5、MOV、MOVC、MOVX指令有什么区别?分别用于哪些场合?答:MOV指令用于对内部RAM的访问。

MOVC指令用于对程序存储器的访问,从程序存储器中读取数据(如表格、常数等)。

MOVX指令采用间接寻址方式访问外部数据存储器,有Ri和DPTR两种间接寻址方式。

执行MOVX 指令时,在P3.7引脚上输出RD有效信号,或在P3.6 引脚上输出WR有效信号,可以用做外部数据存储器或I/O的读/写选通信号,与单片机扩展电路有关。

作业:1.给下段汇编语句加注释,汇编成机器语言,并说明该段程序的作用ORG 0000H 机器码MOV SP,#5FH ;栈顶指针指向内部RAM5FH单元C:0X0000 75815FMOV R7,#08H ;R7<- 08H,R7为计数器0X0003 7F08MOV R0,#3FH ;R0指向内部RAM3FH单元0X0005 783FCLOOP: POP ACC ; ACC<- (SP), SP<- SP-1 0X0007 D0E0 MOV @R0,A;把A中内容送入R0指向的单元(3FH)0X0009 F6DEC R0 ;R0<- R0-1 0X000A 18DJNZ R7,CLOOP ;R7<-R7-1 ,R7不为0跳转0X000B DFFASJMP $ ;原地踏步0X000D 80FE程序段作用:把内部RAM中58H-5FH单元的内容依次存入从38H-3FH的八个单元2.阅读下列程序,分析其功能。

微机原理第三章练习题及解答

微机原理第三章练习题及解答

微机原理第三章练习题及解一:单项选择题●指令MOV AX,[BX] 中,源操作数的缺省段是( A )。

A:DS B:ES C:SS D:CS●指令PUSH [BX] 中,目的操作数的段寄存器是( C )。

A:DS B:ES C:SS D:CS●指令MOVSB 中,目的块的段寄存器是( B )。

A:DS B:ES C:SS D:CS●下列指令中,不正确的指令是( D )。

A:MOV AX,BX B:MOV AX,[BX]C:MOV AX,CX D:MOV AX,[CX]●下列指令中, 不正确的指令是( D )。

A:MOV AL,BL B:MOV AL,[BX]C:MOV AL,CL D:MOV AL,[BL]●下列指令中,不正确的指令是( D )。

A:MOV [BX+SI],AX B:MOV AX,[BX + SI]C:MOV AX,SI D:MOV AX,[BX + CX]●若要使寄存器AL中的高4 位不变,低4 位0,使用指令( B )。

A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位不变,低4 位1,使用指令( C )。

A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位为0,低4 位不变,使用指令( A )。

A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●若要使寄存器AL中的高4 位为1,低4 位不变,使用指令( D )。

A:AND AL,0FH B:AND AL,0F0HC:OR AL,0FH D:OR AL,0F0H●条件转移指令JNZ的转移条件是( B )。

A:CF = 0 B:ZF = 0 C:CF = 1 D:ZF = 1●条件转移指令JZ的转移条件是( D )。

A:CF = 0 B:ZF = 0 C:CF = 1 D:ZF = 1●8086CPU响应可屏蔽中断的条件是( B )。

微机原理第3章习题(答案)

微机原理第3章习题(答案)

微机原理第3章习题(答案)1.下列各条指令是否有错?如果有,请指出错误之处并改正(1)MOVDS 1000H(2)MOV[100],23H(3)ADDAX [BX + BP+ 6](4)PUSHDL(5)INAX, [3FH](6)0UT3FFH AL(7)LESSS [SI](8)POP[AX](9)IMUL4CH(10)SHLBX 5(11)INT300(12)XCHGD, 0FFFH答:(1)错误。

不允许直接向段寄存器送立即数,可改为:MOVAX 1000HMOVD, AX(2)错误。

该指令在语法上是对的,即可以把一个立即数送入一个存储单元;但是如果考虑实际编译,则第一操作数前应加上BYTEPT或WORDPT说明,否则汇编程序会因不能确定操作数长度而指示出错。

可改为:MOVBYTEPTR[1O0] 23H(3)错误。

不能同时使用两个基址寄存器BX、BP进行间接寻址,可改为:ADDAX [BX + DI + 6](4)错误。

堆栈操作应以字为单位进行,而DL是一个字节。

可改为:PUSHDX(5)错误。

在输入/输出指令中,8位端口地址应直接写在操作数处。

可改为:INAX, 3FH(6)错误。

端口地址3FFH已超出8位二进制表示范围,16位端口地址应用DX可改为:MOVD, 3FFHOUTDXAL(7)错误。

LES指令的目操作数应该是通用寄存器,不能是段寄存器。

可改为:LESBX [SI](8)错误。

AX不能用于间接寻址,间接寻址只能用BXBP、SI、DI四个寄存器之一。

可改为:POP[BX](9)错误。

立即数不能做乘法指令的操作数,可改为:MOVBJL 4CHIMULBL(10)错误。

当逻辑移位的次数大于1时,应该用CL指示次数。

可改为MOVCL 5SHLBX CL(11)错误。

操作数300>255,已超出有效的中断类型码范围。

(12)错误。

XCHG指令不允许立即数做它的操作数。

可改为:MOVC, 0FFFHXCHGDXCX2•请指出以下各指令的源、目的操作数所使用的寻址方式(1)MOVSI 2100H(2)SBBDISP[BX], 7(3)AND[DI] , AX(4)ORAX [609EH](5)MOV[BXb DI + 30H], CX(6)PUSHES [BP](7)CALL[DI]DISP(8)JNZShort_label答:(1)源操作数:立即数寻址;目的操作数:寄存器寻址(2)源操作数:立即数寻址;目的操作数:基址寻址(3)源操作数:寄存器寻址;目的操作数:寄存器间接寻址(4)源操作数:直接寻址;目的操作数:寄存器寻址5)源操作数:寄存器寻址;目的操作数:(带位移量的)基址变址寻址(6)源操作数:带段超越的寄存器间接寻址;目的操作数:隐含寻址(7)只有一个操作数,为变址寻址(8)只有一个操作数,为相对寻址3. 已知DS=2000H 有关的内存单元值为:(21000H)=00H,(21001H)=12H,(21200H)=00H,(21201H)=10H,(23200H)=20H,(23201H)=30H,(23400H)=40H,(23401H)=30H,(23600H)=60H,(23601H)=30H,符号COUNT 勺偏移地址为1200H。

微机原理第3章习题与答案

微机原理第3章习题与答案

习题一、选择题1.寻址方式指出了操作数的位置,一般来说_______。

A.立即寻址给出了操作数的地址B.寄存器直接寻址的操作数在寄存器内,而指令给出了存储器C.直接寻址直接给出了操作数本身D.寄存器直接寻址的操作数包含在寄存器内,由指令指定寄存器的名称答案:D2.寄存器寻址方式中,操作数在_________。

A.通用寄存器B.堆栈C.内存单元D.段寄存器答案:A3.寄存器间接寻址方式中,操作数在_________。

A.通用寄存器B.堆栈C.内存单元D.段寄存器答案:C4.下列指令中的非法指令是______。

A. MOV [SI+BX], AXB.MOV CL, 280C.MOV [0260H], 2346HD.MOV BX, [BX]答案:B5.设(SP)=0100H,(SS)=2000H,执行PUSH BP指令后,栈顶的物理地址是_____。

A.200FEHB.0102HC. 20102HD.00FEH答案:A6.指令LEA BX, TAB执行后,其结果是______。

A.将TAB中内容送BXB.将TAB的段基址送BXC.将TAB的偏移地址送BXD.将TAB所指单元的存储内容送BX答案:C7.下列正确的指令格式有______。

A.MOV [BX], 1B.MOV AL, 0345HC.MOV ES: PTR[CX], 3D. XLAT答案:D8.设(AX)=C544H,在执行指令ADD AH,AL之后,______。

A.CF=0,OF=0B.CF=0,OF=1C.CF=1,OF=0 D,CF=1,OF=1答案:C9.若AL、BL中是压缩BCD数,且在执行ADD AL, BL之后,(AL)=0CH,CF=1,AF=0。

再执行DAA后,(AL)=_____。

A.02HB.12HC.62HD.72H答案:B10.执行下列程序后AL的内容为_____。

MOV AL, 25HSUB AL, 71HDASA.B4HB.43HC.54HD.67H答案:C11.下列四条指令中,需要使用DX寄存器的指令是______。

微机原理第3章习题答案

微机原理第3章习题答案

微机原理第3章习题答案第3章习题参考答案1 分别指出下列指令中的源操作数和目的操作数的寻址方式。

答:源操作数目的操作数(1)MOV AX,[SI] 寄存器寻址寄存器间接寻址(2)MOV DI,100 寄存器寻址立即寻址(3)MOV [BX],AL 寄存器间接寄存器(4)MOV [BX][SI],CX 基址+变址寄存器(5)ADD DX,106H[SI] 寄存器变址(6)PUSH AX 寄存器(7)ADD DS:[BP],AX 带段超越寄存器间接寻址寄存器(8)OR AX,DX 寄存器寄存器2.设寄存器(DS)=2000H,(SS)=1500H,(ES)=3200H,(SI)=0A0H,(BX)=100H,(BP)=10H,数据段中变量VAL的偏移地址为50H。

试指出下列各条指令中源操作数的寻址方式是什么?对于存储器操作数,其物理地址是多少?答:操作数的寻址方式存储器操作数PA (1)MOV AX,[100H] 直接寻址20100H(2)MOV CX,ES:[BX] 带段超越的寄存器间接寻址32100H(3)MOV DX,[BX][SI] 基址+变址寻址200F0H(4)MOV AX,V AL[SI] 变址寻址200F0H(5)MOV BX,1234[BX] 基址寻址205D2H(6)MOV AX,[BP] 寄存器间接寻址15010H3. 判断下列指令有误错误,若有,则改之。

答:(1)PUSH CL 有错,对堆栈操作数总是16位的。

改为:PHSH CX (2)ADCAX,0ABH 无,只是CF的值是不确定的(0或1)(3)OUT 3EBH, AX 有,输出设备的端口地址若超过8位,应使用DX 间接寻址。

改为:MOV DX, 3EBHOUT DX,AX(4)MUL AL, CL 有错。

乘法指令中有AX或AL寄存器是隐含的。

改为:MUL CL(5)MUL AX, 25 有错。

乘法指令中不能用立即数。

改为:MOV BX,25MUL BX(6)ROL DX,5 有错。

第三章微机原理课后习题参考答案

第三章微机原理课后习题参考答案

第三章微机原理课后习题参考答案第三章微机原理课后习题参考答案————————————————————————————————作者:————————————————————————————————日期:第三章微机原理课后习题参考答案1. 指出下列指令的错误原因。

(1) AND AX, DL ;类型不匹配(2) ADD CS, DX ;CS不能作为目的操作数(3) MOV AX, IP ;IP不能作为指令的操作数(4) MOV [BP][SI], [SI] ;两个操作数不能同时为内存操作数(5) SUB [BP][SI], ES:DX ;段超越前缀只能用在内存操作数之前(6) XCHG AL, [SI][DI] ;没有[SI][DI]这种操作数形式(7) JGE AX ;条件转移指令的操作数只能是标号(8) PUSH DL ;对堆栈不能进行字节操作2. 用一条指令将BX清0。

(请给出3种方法)方法1:MOV BX, 0方法2:SUB BX, BX方法3:AND BX, 0 ;将BX和0做与,可以将BX清零方法4:XOR BX, BX3. 写出实现下列功能的指令序列。

(1) 判断AX的值,若AX等于0,则转到标号LABEL处。

(请写出3种方法)方法1:CMP AX, 0JZ LABEL ; 如果ZF = 0,说明AX为0,因为CMP指令是做减法,但是不写回结果,因此指令执行后AX内容不会受到破坏方法2:TEST AX, 0FFFF HJZ LABEL ; 如果ZF = 0,说明AX为0方法3:AND AX, 0FFFF HJZ LABEL(2) 将AL的高4位与低4位分别放入AH与AL的低4位,并将AH与AL的高4位清0。

MOV AH, ALAND AL, 0FH ; AL高4位通过与清零,而低4位保持不变MOV CL, 4SHR AH, CL ; 这两条指令通过逻辑右移将AH的高4位清零,因为SHR在右移后,高位补零(3) 若AX和BX中的数恰好1个是奇数、1个是偶数,则将奇数放入AX,偶数放入BX;否则,AX和BX不变。

微型计算机原理(第三章课后答案)

微型计算机原理(第三章课后答案)

微型计算机原理(第三章课后答案).第三章80X86微处理器1.简述8086/8088CPU中BIU和EU的作用,并说明其并行工作过程。

答:(1)BIU的作用:计算20位的物理地址,并负责完成CPU与存储器或I/O端口之间的数据传送。

(2)EU的作用:执行指令,并为BIU提供所需的有效地址。

(3)并行工作过程:当EU从指令队列中取出指令执行时,BIU将从内存中取出指令补充到指令队列中。

这样就实现了取指和执行指令的并行工作。

2.8086/8088CPU内部有哪些寄存器?其主要作用是什么?答:8086/8088CPU内部共有14个寄存器,可分为4类:数据寄存器4个,地址寄存器4个,段寄存器4个和控制寄存器2个。

其主要作用是: (1) 数据寄存器:一般用来存放数据,但它们各自都有自己的特定用途。

AX(Accumulator)称为累加器。

用该寄存器存放运算结果可使指令简化,提高指令的执行速度。

此外,所有的I/O指令都使用该寄存器与外设端口交换信息。

BX(Base)称为基址寄存器。

用来存放操作数在内存中数据段内的偏移地址CX(Counter)称为计数器。

在设计循环程序时使用该寄存器存放循环次数,可使程序指令简化有利于提高程序的运行速度。

DX(Data)称为数据寄存器。

在寄存器间接寻址的I/O指令中存放I/O端口地址;在做双字长乘除法运算时,DX与AX一起存放一个双字长操作数,其中DX存放高16位数。

(2)地址寄存器:一般用来存放段内的偏移地址。

SP(Stack Pointer)称为堆栈指针寄存器。

在使用堆栈操作指令(PUSH或POP)对堆栈进行操作时每执行一次进栈或出栈操作,系统会自动将SP的内容减2或加2,以使其始终指向栈顶。

BP(Base Pointer)称为基址寄存器。

作为通用寄存器,它可以用来存放数据,但更经常更重要的用途是存放操作数在堆栈段内的偏移地址。

SI(Source Inde某)称为源变址寄存器。

微机原理课后答案3

微机原理课后答案3

第三章部分习题解答
1. 评价存储器性能的重要指标有:速度、容量、稳定性、性能价比等。

高速是计算机的主要技术指标,CPU不断访问存储器,而CPU的速度足够高,所以存储器的速度就直接影响着计算机的速度;一般来说,存储器的容量越大允许存放的程序和数据越多越有利于提高计算机的处理能力,所以说提高存储器的性能以成为计算机性能提高的关键。

2. 内存储器---------RAM(既可读又可写)---------静态RAM 速度高,不用刷新,价格高
-----动态RAM 集成度高,成本低,需要刷新
-----集成RAM 刷新电路集成在芯片内的动
态RAM
-----ROM(既可读又可写)--------掩模ROM 其中信息在制造过程中生成
-----PROM 可在芯片中一次性写入信息
-----EPROM 其中信息可擦去再写
-----EEPROM 其中信息可电擦后再写3.答(1) 有4KB个存储单元。

(2)每个存储单元有8位二进制。

(3)首地址为0000H,末地址为0FFFH。

4. 连线如下图所示,采用全译码电路。

5. 连线如右图所示,采用部分译码电路。

6. 连线如下图所示,采用部分译码电路。

微机原理第三章习题与参考答案

微机原理第三章习题与参考答案

第三章习题与参考答案3.1 已知 (DS) = 1000H,(ES) = 2000H,(SS) = 3000H,(SI) = 0050H,(BX) =0100H,(BP) =0200H,数据变量DISP的偏移地址为1000。

指出下列指令的寻址方式和物理地址。

(1) MOV AX,0ABH 立即寻址无(2) MOV AX,BX 寄存器寻址无(3) MOV AX,[l000H] 直接寻址 10000H(4) MOV AX,DATA 直接寻址 (DS*16+DATA )(5) MOV AX,[BX] 寄存器间接寻址 10100H(6) MOV AX,ES:[BX] 寄存器间接寻址 20100H(7) MOV AX,[BP] 寄存器间接寻址 30200H(8) MOV AX,[SI] 寄存器间接寻址 10050H(9) MOV Ax,[BX+l0] 寄存器相对寻址 1010AH(10) MOV AX,DISP[BX] 寄存器相对寻址 11100H(1l) MOV AX,[BX+SI] 基址变址寻址 10150H(12) MOV AX,DISP[BX][SI] 相对基址变址寻址 11150H3.2 分别说明下例指令采用的寻址方式和完成的操作功能。

(1) MOV CX,2000H 立即寻址将立即数2000H送CX寄存器(2) MOV DS,AX 寄存器寻址将AX寄存器内容送DS段寄存器(3) AND CH,[1000H] 直接寻址将[DS*16+1000H]单元的内容送CH寄存器(4) ADD [DI],BX 寄存器间接寻址将CL寄存器的内容送[DS*16+DI]单元(5) MOV SS:[3000H],CL 直接寻址将CL寄存器的内容送[SS*16+3000H]单元(6) SUB [BX][SI],1000H 直接寻址将立即数1000H送[DS*16+BX+SI+50H]单元(7) ADD AX,50H[BX][SI] 相对基址变址寻址将[DS*16+BX+SI+50H]单元的内容送AX寄存器(8) PUSH DS 寄存器寻址将DS寄存器的内容送[SS*16+SP]单元(9) CMP [BP][DI],AL 寄存器寻址将AL寄存器的内容送[SS*16+DI+BP]单元3.3 判断下列指令正误,如果错误请指出原因。

微机原理第三章习题及答案

微机原理第三章习题及答案

第 三 章 存 储 器习题答案一、填空题1、某存储器模块的容量为64K 字节,若采用2164(64K ×1位)组成,则需要2164 8 片,若改用2764(8K ×8位),则需 8 片。

解答:容量单个存储器芯片的存储存储器系统的存储容量=片个数构成存储器系统所需芯所以:64*82164=864*1K bitK bit=所需芯片个数片64*82764=88*8K bitK bit=所需芯片个数片2、1K ⅹ8位的RAM 芯片有 10 条地址线, 8 条数据线,若用其组成16K ⅹ8位存储器需要 16 片。

解答:存储单元的个数(字长)通常与地址线的位数相关,每个存储单元存储的二进制位数(位数)与数据线的位数相关。

存储容量为1K*8bit (8K*8位),表示每片RAM 有1K 个存储单元(K 1210=),每个存储单元存储8位二进制数,也可以写为1KB (B 表示8位二进制数,即1个字节Byte ),因此该RAM 芯片有10根地址线(A 0-A 9),8根数据线(D 0-D 7)。

3、现要用6116SRAM 芯片构成8K ×32位的存储器,共需此种芯片 16 片。

解答:8*326116=162*8K bitK bit=所需芯片个数片二、选择题1、SRAM 芯片6116的3个信号CE 、OE 、WE 电平分别为 时,6116的工作方式为读出。

( D )A.1,0,0 B.0,0,0 C.0,1,1 D.0,0,1解答:3个信号CE 、OE 、WE 为6116的控制信号,CE (书中用CS 表示):片选信号,低电平有效,CE 为低电平时,芯片被选中,此时可以进行读写操作,WE :写允许信号,低电平有效时允许将数据写入芯片,OE :输出允许信号,低电平有效时为读操作。

因此当6116处于读工作方式时CE 为0,OE 为0,WE 为1;处于写工作方式时CE 为0,OE 为1,WE 为0。

微机原理与接口技术第三章试题及答案

微机原理与接口技术第三章试题及答案

第三章3-1选择题1、MOVX A,@DPTR指令中源操作数的寻址方式是(B)(A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址2.ORG 0003HLJMP 2000HORG 000BHLJMP 3000H 当CPU响应外部中断0后,PC的值是(B)(A)0003H (B)2000H (C)000BH (D)3000H3.执行PUSH ACC指令,MCS-51完成的操作是(A)(A)SP+1 SP (ACC)(SP)(B)(ACC)(SP)SP-1 SP(B)(C)SP-1 SP (ACC)(SP) (D)(ACC)(SP)SP+1 SP4、LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=(D)(C)2000H (B)2001H (C)2002H (D)2003H5、51执行完MOV A,#08H后,PSW的一位被置位(D)(A)(A)C (B)F0 (C)OV (D)P6、下面条指令将MCS-51的工作寄存器置成3区(B)(A)MOV PSW,#13H (B)MOV PSW,#18H(B)SETB PSW.4 CLR PSW.3 (d) SETB PSW.3 CLR PSW.47、执行MOVX A,DPTR指令时,MCS-51产生的控制信号是(C)(D)/PSEN (B)ALE (C)/RD (D)/WR8、MOV C,#00H的寻址方式是(A)(A)位寻址(B)直接寻址(C)立即寻址(D)寄存器寻址9、ORG 0000HAJMP 0040HORG 0040HMOV SP,#00H当执行完左边的程序后,PC的值是(C)(A)0040H (B)0041H (C)0042H (D)0043H10、对程序存储器的读操作,只能使用(D)(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令3-2判断题。

4.MCS-51的相对转移指令最大负跳距是127B。

微机原理与接口技术 第三章 课后答案

微机原理与接口技术 第三章 课后答案

第三章参考答案1.按照题目中提出的要求,写出能达到要求的一条(或几条)汇编形式的指令:⑴将一个立即数送入寄存器BX;⑵将一个立即数送入段寄存器DS;⑶将变址寄存器DI的内容送入一个存储单元中;⑷从存储单元中取一个数送到段寄存器ES中;⑸将立即数0ABH与AL相加,结果送回AL中;⑹把BX与CX寄存器内容相加,结果送入BX;⑺用寄存器间接寻址方式,实现一个立即数与存储单元内容相加,结果放回存储器。

解:(1)MOV BX, 1234H(2)MOV AX, 1234HMOV DS, AX(3)MOV [BX], DI(4)MOV ES,[BX](5)ADD AL,0ABH(6)ADD BX,CX(7)MOV AX,[BX]ADD AX,1234HMOV [BX],AX2.执行下面程序,完成指令后的填空:MOV AX,2000H ;AH= 20HMOV DS,AX ;AL= 00H DS= 2000HMOV SS,AX ;SS= 2000H AX= 2000HMOV BX,2030H ;BH= 20H BL= 30HMOV SI,BX ;SI= 2030HMOV DI,3040H ;DI= 3040HMOV SI,DI ;SI= 3040HMOV SP,50FFH ;SP= 50FFHMOV DX,SP ;DH= 50H DL= FFHMOV CL,25 ;CL= 19HMOV BL,CL ;CL= 19H BL= 19HMOV AH,0F0H ;AH= F0HMOV CH,AH ;CH= F0HMOV BYTE PTR[DI],64 ;(DI)= 40HMOV WORD PTR[SI],256 ;(SI)= 00H (SI+1)= 01HMOV DL,[SI+1] ;DL= 01HMOV DH,1+[SI] ;DH= 00HMOV AL,1[SI] ;AL= 01HMOV WORD PTR[BX][SI],34 ;(BX+SI)= 22H (BX+SI+1)= 00HMOV [BX+SI+4],BL ;(BX+SI+4)= 19HMOV BP,2[BX+DI] ;BP= 00HMOV [BP],AL ;(BP)= 01HMOV AX,[BP][DI] ;AX= 0100HMOV BL,AL ;BL= 00HMOV ES,BX ;ES= 2000HPUSH BX ;SP= 50FDH (SP,SP+1)= 2000HPUSH DI ;SP= 50FBH (SP,SP+1)= F019HPOP CX ;SP= 50FDH CX= 3040HPOP DX ;SP= 50FFH DX= 2000HXCHG AX,BP ;AX= 0000H BP= 0100HXCHG DH,BL ;DH= 00H BL= 20HLAHF ;FLAG= 0002H AH= 02HSAHF ;FLAG= 0002H AH= 02HPUSHF ;SP= 50FDH (SP,SP+1)= 0002HPOPF ;SP= 50FFH FLAG= 0002H3.设DS=2000H,ES=2100H,SS=1500H,SI=00A0H。

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

第三章习题答案
一、单选题
1.8086是高性能的第三代微处理器,是Intel系列的 B 位微处理器。

A.8 B.16 C.32 D.64
2.8086有20根地址线,可以寻址到的内存空间能达到 B 字节。

A.1K B.1M C.1G D.1T
3.80486的内部所有部件都连接在 A 上,并通过 B 交换数据
A.内部总线B.数据总线C.地址总线D.外部总线
4. C 的任务就是在内部控制总线信号的控制下,把内部数据总线上的数据送上外部地
址总线,或与外部数据总线的某些位交换数据,并产生相应的外部控制信号。

A.高速缓存部件B.代码预取部件
C.总线接口部件D.指令译码部件
5.在指令流水线技术中,预取指令部件一次可以从内部Cache取 C 字节的指令代码,
送预取指令队列等候执行。

A.4 B.8 C.16 D.32
6.当存储器的读出时间大于CPU要求的时间时,为了保证CPU与存储器的周期配合,就要
利用一个READY信号,使CPU插入一个 D 状态。

A.T
1B.T
2
C.T
3
D.T
w
7.指令队列的作用是 D 。

A.暂存操作数地址B.暂存操作数
C.暂存指令地址D.暂存预取指令
8.在80486微处理器中设置有4个系统地址寄存器,用来在保护方式下管理4个系统表。


中用来存放全局描述符表的是 A 。

A.全局描述符表寄存器B.中断描述符表寄存器
C.局部描述符表寄存器D.任务状态寄存器
9.段寄存器和 D 一起为操作系统完成内存管理、多任务环境、任务保护提供硬件支持。

A.调试寄存器B.系统地址寄存器
C.标志寄存器D.指令指针寄存器
10. B 为中断允许标志。

该位置为1时,允许响应外部可屏蔽中断(INTR);该位置为0
时,禁止响应外部可屏蔽中断。

A.OF B.IF C.DF D.ZF
二、判断题
1.8086的内部结构由总线接口部件BIU和执行部件EU两部分组成。

(T )
2.总线实际上是一组导线,是各种公共信号线的集合,用于作为微型计算机中所有各组成部
分传输信息共同使用的“公路”。

总线上传输的信号是双向的。

(T )
3.INTR是可屏蔽的中断信号输入,此信号是电平型的,必须保持足够长的时间等待指令单
元的识别,如果保持的时间不够长,CPU不会察觉此次请求。

(F )
4.指令指针指示器是32位的寄存器,它的内容是下一条要取入CPU的指令在内存中的偏移
地址。

(T )
5.
微机原理习题答案
6.一个指令周期中包含若干个机器周期,一个机器周期中包含若干个时钟周期。

(T)
7.时钟周期是处理器中处理动作的最小时间单位,通常称为一个T状态。

这是微处理器完成
一步完整操作的最小时间单位。

(T )
8.在指令流水线技术中,译码操作可以分为D
1和D
2
两个阶段,因此又叫做二级译码。

( F )
9.时钟周期是基本定时脉冲的两个沿之间的时间间隔,而基本定时脉冲是由外部振荡器产生
的,通过CPU的CLK输入端输入。

(T )10.标志寄存器EFLAGS为32位寄存器,它的低16位称为FLAGS。

标志寄存器可以分为3
类:状态标志、控制标志、系统标志。

(T )11.当奇偶标志PF位置置位时,表示结果数据位中有偶数个0。

该标志位主要用于数据通讯应
用程序中,可以检查数据传送中是否出现错误。

( F )
三、简答题
1.简述80486 CPU的内部基本寄存器的组成。

2.简述80486 CPU的内部结构,并说明每个部件的功能。

3.80486有哪3种工作方式,为什么要采用不同的方式工作?
4.简述可屏蔽中断信号INTR与非屏蔽中断信号NMI的区别。

5.什么是流水线技术?试说明指令流水线的5个步骤。

1.答:主要的基本寄存器有以下一些:
通用寄存器包括EAX、EBX、ECX、EDX、EBP、ESP、ESI和EDI等8个32位
寄存器; 指令指针指示器-EIP;标志寄存器-EFLAGS;段寄存器;系统地址寄存器;
调试寄存器;测试寄存器; 控制寄存器;浮点寄存器。

2.答: 80486 CPU的内部结构主要由以下九个部分构成:
总线实际上是一组导线,是各种公共信号线的集合,是微型计算机中各组成部分传输信息共同使用的“公共通路”. 包括数据总线,地址总线,控制总线。

总线接口部件的任务就是在内部控制总线信号的控制下,把内部数据总线上的数据送上外部地址总线,或与外部数据总线的某些位交换数据,并产生相应的外部控
制信号。

高速缓存部件用于减少CPU对内存的访问次数,缩短程序运行的时间。

它可以存储8k字节的指令和数据
代码预取部件用于对代码做取入、排队分析、分解等译码的前期准备工作
指令译码部件用于对指令进行译码,把指令的含义转换成相应的内部控制总线信号,指挥CPU的各部件协同工作。

浮点数部件用于完成浮点数据和双精度数据的运算
执行部件是CPU的核心部件,大部分指令所要求的操作都由该部件完成。

执行部件可以完成一般的算术运算、逻辑运算及数据传送等任务。

段部件用于把指令指定的逻辑地址变换为线性地址,在变换过程中实现任务间的保护以及虚拟内存技术
2
分页部件把段部件输出的线性地址转换成物理地址,实现以少量内存模拟大容
量内存的功能,提高内存的利用率。

3. 答: 80486是32位的微处理器,并且是由16位的微处理器发展而来的。

为使已经在用户中流行的用于16位CPU的软件继续使用,又能够充分发挥32位CPU的优势,32位CPU都采用多种工作模式的方法来解决这个矛盾。

80486采用3种工作方式。

∙实地址方式(REAL):80486采用实地址方式使自身退回到8086状态,相当于一个功能更强、速度更快的16位机。

80486实地址方式的工作原理与8086基本相
同,主要区别是80486能处理32位数据。

∙保护方式(PROTECTED):采用保护方式可以充分发挥32位CPU的各项功能。

在保护方式下,CPU可以访问232字节的物理存储空间,最大段长为232字节。

虚拟8086方式(VIRTUAL 8086):在部分发挥32位CPU功能的环境中,用32
位机的代码去模拟16位机的程序。

虚拟8086方式是一种既能有效利用保护功能,又能执行8086的代码的工作方式。

CPU的工作过程与保护方式下的工作过程相
同,但程序指定的逻辑地址与8086有相同的解释,即由逻辑地址向物理地址转
换的过程是相同的。

4.答: 可屏蔽中断信号INTR与非屏蔽中断信号NMI的区别:当IF(中断允许标志)
该位置为1时,允许响应外部可屏蔽中断(INTR);该位置为0时,禁止响应外
部可屏蔽中断。

IF不影响非屏蔽外部中断(NMI)和内部产生的中断。

5.答: 流水线技术是一种将每条指令分解为多步,并让各步的操作同步进行,
从而实现几条指令并行处理的技术. 流水线技术分为5个步骤:指令预取PF、译码D1、译码D2、执行EX和写回WB.
预取指令PF部件一次可以从内部Cache取16字节的指令代码,送预取指令队列等候执行。

在16字节中平均有5条指令,这样就满足了译码部件的需要
译码操作分为D
1和D
2
两个阶段,又叫做二级译码: D
1
是第一阶段,从
指令代码中分解出操作码进行译码,找出第一条微指令代码的入口地址送入控制
ROM; D
2
是译码的第二阶段。

在这一阶段,由微代码控制器根据D1译码结果产
生执行该指令的控制信号,并进行寻址方式的计算,即计算出存储器地址。

执行EX,即包括各种算术逻辑运算,还包括对Cache的访问和对寄存器
的修改等操作。

流水线的最后一个步骤写回WB是把结果写回到目的寄存器或目的存储
单元。

3。

相关文档
最新文档