微机原理习题答案_第1页
微机原理习题答案_第2页
微机原理习题答案_第3页
微机原理习题答案_第4页
微机原理习题答案_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上第二章 8086奔腾系列微处理器习题解答1 试说明8086/8088CPU中有哪些寄存器?各有哪些用途?答:寄存器组有(1)数据寄存器,含AX、BX、CX、DX四个通用寄存器,用来暂时存放计算过程中所遇到的操作数,结果和其它信息。(2)指针及变址寄存器,含SP、BP、SI、DI四个十六位寄存器,它们可以像寄存器一样在运算过程中存放操作数只能以字为单位使用。还用来在段内寻址时提供偏移地址。(3)段寄存器,含CS、DS、SS、ES,用来专门存放段地址。(4)控制寄存器,包括IP和PSW两个16为寄存器。IP是指令指针寄存器,用来存放代码段中的偏移地址。PSW为程序状态字寄

2、存器,由条件码标志和控制标志构成。条件码标志用来纪录程序运行结果的状态信息。包括OF、SF、ZF、CF、AF、PF。控制标志位有三个寄存器DF、IF、TF组成。2 是说明8086/8088CPU中标志位寄存器中各标志位的意义?答:OF溢出标志,在运算过程中,如操作数超出了机器能表示的范围则置1,否则置0。SF符号标志,运算结果为负时置1,否则置0。ZF零标志,运算结果为0置1,否则置0 。CF进位标志,记录运算是最高有效位产生的进位。AF辅助进位标志,记录第三位的进位情况。PF奇偶标志位,用来为机器中传送信息时可能产生的出错情况提供检验条件,当结果操作数中的1的个数为偶时置1。DF方向标志位,

3、在串处理指令中控制处理信息的方向。当DF=1时,每次操作后变址寄存器减量,这样就使串处理从高地址向低地址方向处理。IF中断标志,当IF=1时,允许中断,否则间断中断。TF陷阱标志,用于单步操作方式,当TF为1时,每条指令执行完后产生陷阱,由系统控制计算机。当TF为0时,CPU正常工作不产生陷阱。3哪些操作只能隐含使用某个段寄存器,而不能用其它段寄存器代替?哪些操作出隐含使用某个段寄存器外,还可以使用其它段寄存器?答:计算程序的地址隐含使用CS,正在执行的程序隐含使用SS,而数据的地址隐含使用ES和DS。48086/8088系列违纪在存储器中寻找存储单元时,逻辑地址由哪两个部分组成的?答:由段地

4、址和偏移地址两部分构成。5设IBM PC微机内存中某个单元的物理地址是12345H,试完成下列不同的逻辑地址表示:(1) 1234H:_H(2) _H:0345H答:(1)1234H:05H (2) 1200H:0345H6假设某程序执行过程中,(SS)=0950H,(SP)=64H,试问该用户程序的堆栈底部物理地址是多少?答:(SS)*10H+(SP)=09564H7设堆栈段寄存器(SS)=0E4BH,程序中设堆栈长度为200H个字节。试计算出堆栈底部字单元物理地址,堆栈指针SP初始值(即堆栈中没有数据时)和SP初始值指向的物理地址。答:物理地址为:3E4B0H, SP的初始值为200H,指

5、向的物理地址为:3E6B1H.。8设某用户程序(SS)=0925H,SP=30H,(AX)=1234H,(DX)=5678H,问堆栈的地址范围是多少?如现有两条进展指令: PUSH AXPUSH DS试问两指令执行后,(SP)=?答:寻址范围:09250H09280H,SP减4为2CH。98086CPU与 8088CPU由哪些相同之处?又有哪些区别?答:他们内结构基本相同,不同之处仅在于8088有8条外部数据总线,因此为准16位。8088有16条外部数据总线,两个CPU的软件完全兼容,程序的编制也完全相同。108086CPU从功能上分为几部分?各部分由什么组成?各部分的功能是什么?答:8086

6、CPU从功能上分外两大部分,一是执行部件(EU),二是总线接口部件(BIU)。执行部件是由以下四部分组成:(1)4个通用寄存器AX,BX,CX,DX。(2)4个专用寄存器BP,SP,XI,DI。(3)标志寄存器FR。(4)算术逻辑部件ALU。功能是负责执行所以的指令,向总线接口部件(BIU)提供指令执行的结果数据和地址,并对通用寄存器和标志寄存器进行管理。 总线接口部件(BIU)由以下部件组成:(1)四个段寄存器,代码段寄存器,数据段寄存器,附加段寄存器,堆栈段寄存器。(2)指令指针寄存器。(3)地址加法器。(4)指令领队列。功能:执行外部总线周期,负责存储器与I/O端口传送数据。也就是负责C

7、PU与存储器和外设之间的信息交换。补:8086系统中的物理地址是如何的得到的?假如CS=2000H,IP=2100H,其物理地址是多少?答:8086系统的物理地址是将段地址乘10H,加上偏移地址。 2000H*10H+2100H=22100H (物理地址)11. 什么叫总线周期?一个总线周期包括多少时钟周期,什么情况下要插入TW等待周期?插入多少个TW取决于什么因素?答:CPU把总线接口部件BIU完成一次访问存储器或外设操作所需要的时间称为一个总线周期,它包括了四个时钟周期。 当访问存储器或外设时,存储器或外设不能及时配合CPU传输数据时,存储器或外设通过“READY”信号在T3之前向CPU发

8、出一个“数据未准备好”信号,CPU会在T3之前插入一个或多个等待时间周期。当存储器或外设准备好数据,通过“READY”发“准备好”信号,CPU接受此信号后,会自动脱离TW状态进入T4状态。因此,插入多少个TW由“READY”信号决定。14 什么是最大模式?什么是最小模式?用什么方法将8086/8088置于最大模式和最小模式?答:最小模式,即系统中只有一个微处理器,所有的总线控制信号都直接由8086/8088,因此,系统总线控制电路被减到最小。 最大模式,即系统里包括两个或多个微处理器,主处理器就是8086/8088,其它均为协助主处理器工作的协处理器。它主要用于中等规模或大型的8086/808

9、8系统中。 将8086/8088的第33脚接地时,系统处于最大模式,接5V时,为最小模式13. 什么是地址锁存器?8086/8088系统中为什么要用地址锁存器?锁存的是什么信息? 答:地址锁存器就是一个暂存器,它根据控制信号的状态,将总线上地址代码暂存起来。8086/8088数据和地址总线采用分时复用操作方法,即用同一总线既传输数据又传输地址。当微处理器与存储器交换信号时,首先由CPU发出存储器地址,同时发出允许锁存信号ALE给锁存器,当锁存器接到该信号后将地址/数据总线上的地址锁存在总线上,随后才能传输数据。15. 8086/8088系统用的时钟发生器8284 A 产生哪些信号? 答:时钟发

10、生器8284A产生恒定的时钟信号(CLK),复位信号(RESET),准备就绪信号(READY)。补: 8086/8088的执行部件EU由多少个通用寄存器,多少个专用寄存器,几个标志寄存器和什么组成? 答:执行部件由以下几部分组成:1、四个通用寄存器 AX BX CX DX;2、四个专用寄存器,即基数指针寄存器BP,堆栈指针寄存器SP,源变址寄存器SI,目的变址寄存器DI;3一个标志寄存器FR;4算术逻辑部件ALU。补: 8086与8088的16位寄存器中,有多少个寄存器可拆分为8位寄存器使用。它们分别是什么?它们又被统称为什么? 答:在8086与8088的16位寄存器中,有四个寄存器可拆分为八

11、位寄存器使用,它们分别是AX,BX,CX,DX。统称为通用寄存器。补:PU从主存取出一条指令并执行该指令的时间称( ),它通常用若干个( )来表示,而后者又包括若干个( )。 指令周期 机器周期 时钟周期 答:12316.计算机主频为8MHz,每个机器周期平均含两个时钟周期,每条指令平均有2.5个机器周期,则该机器的平均指令执行速度为多少MIPS?答:该机器执行一条指令所用时间为:1/8*10-6*2*2.5=5/8*10-6t;平均指令执行速度为: 1/ (5/8)=1.6MIPS。17. 8086/8088的存储器可以寻址1MB的空间,在对I/O进行读写操作时,20位地址中只有哪些位是有效

12、的?这样,I/O地址的寻址空间为多大?答:在对I/O进行读写操作时,20位地址中只有A0A15有效,I/O地址的寻址空间为216B。18. 指令队列的作用是什么?答:指令队列存放内存中取下的将被执行的下一条或下几条指令,使CPU执行完一条指令就可立即执行下一条,提高CPU的效率。19. 8086CPU可访问的存储空间为1MB,实际上分为奇数存储体和偶数存储体两部分,对奇数存储体的选择信号是什么,对偶数存储体的选择信号是什么,对每个存储体单元的选择信号是什么? 答:奇数存储体的选择信号为BHE,偶数存储体的选择信号为A0。对每个存储体内存储单元的选择信号是READY。20. 当=0,=0,=1时

13、,CPU完成的操作是什么? 答:CPU完成一个对I/O设备端口的读操作。第三章 存储器技术习题解答1 半导体存储器从器件原理的角度可分为哪两种类型?答:半导体存储器从器件原理角度分为ROM和RAM两种。2 为保证动态RAM中的内容不消失,需要进行哪一步操作?答:由于电容有漏放电现象,为保证RAM中的内容不消失,必须另外设计一种电路,定时(一般为2ms),使电容上泄放的电荷得到补充,即进行内存刷新。3 存储器片内的地址译码有哪两种方式?答:存储芯片内的地址译码有全地址译码和独立译码两种。4 存储器是计算机系统的记忆设备,它主要用来存储哪些东西?答:存储器用来存储地址、数据和程序。8 某计算机主存

14、容量为2048KB,这里的2048KB表示多少个字节?答:2048KB表示2048*1024个Byte,即2(11)*2(10)=2(21)个。9 若256KB的SRAM具有8条数据线,则它具有多少条地址线? 答:具有18条地址线。10 计算机的内存可采用ROM、RAM、磁盘中的哪几种?EPROM指的又是什么?主存和CPU之间增加高速缓存的目的是什么? 采用虚拟存储器的目的是什么?答:可采用ROM和RAM。EPROM指可编程并可擦除的ROM,兼有ROM和RAM的功能。由于主存储器的存/取时间比CPU慢一个数量级,从而严重影响了微型机的速度,而RAM线路的读写时间可与CPU的处理速度处于同一个数

15、量级,因此在主存储器和CPU之间增加高速缓冲存储器Cache,以提高机器的速度。虚拟存储器的容量比实际物理上主存储器的容量大,软件可根据需要将所需的存储区域调入物理存储器,也可以提高处理速度。11 某以8088为CPU的微型计算机内存RAM区为00000H3FFFFH,若采用6264、62256、2164或21256各需要多少片芯片?答: 采用6264(8k*8bit)需要32片;采用62256(32k*8bit)需要8片;采用2164 (64k*1bit) 需要32片;采用21256 (256k*1bit)需要8片。12利用全地址译码将6264芯片接在8088的系统总线上,其所占地址范围为B

16、E000HBFFFFH,试画连接图。解答:采用全地址译码连接图如下:图312 电路图 补: 试利用6264芯片,在8088系统总线上实现00000H03FFFH的内存区域,试画连接电路图。解答:采用全地址译码。图314 电路图13 有2片6116,现欲将它们接到8088系统中去,其地址范围为40000H到40FFFH,试画连接电路图。利用写入某数据并读出比较,若有错,则在DL中写入01H;若每个单元均对,则在DL写入EEH,试编写此检测程序。解答:连接电路图见下一页。14 若用全地址译码将EPROM 2764(128或256)接在首地址为A0000H的内存区,试画出电路图。解答:电路图如下:

17、图314电路图13题 连接电路图如下: 图317电路图第四章 指令与寻址方式习题解答1试分别说明下列各指令中源操作数和目的操作数使用的寻址方式:() AND AX,0FFH() AND BL,OFFH() MOV DS,AX() CMP SI,CX() MOV DS:0FFH,CL() SUB BPSI,AH() ADC AX,0ABHBX() OR DX,-35BXDI() PUSH DS() CMC答: 目的操作数 源操作数 (1)寄存器直接寻址 立即数寻址 (2)寄存器直接寻址 直接寻址 (3)寄存器直接寻址 寄存器直接寻址(4)寄存器间接寻址 寄存器直接寻址(5)直接寻址 寄存器直接寻

18、址(6)基址变址寻址 寄存器直接寻址 (7)寄存器直接寻址 寄存器相对寻址 (8)寄存器直接寻址 基址变址相对寻址 (9)无 寄存器直接寻址 (10)隐含寻址2试分别指出下列各指令语句的语法是否有错,如有错,指明是什么错误。() MOV BXBP,AX() TEST BP,BL() ADD SI,ABH() AND DH,DL() CMP CL,1234H() SHR BXDI,3() NOT CX,AX() LEA DS,35SI() INC CX,1() PUSH 45DI答:(1)应将BP,BX其中之一该为SI或DI (2)正确 (3)ABH改为0ABH (4) (5)是字操作,CL改为

19、CX (6)移位数大于1时,应用CL (7)NOT指令只有一个操作数 (8)LEA指令的源操作数应为一内存单元地址 (9)此指令不用指出1 (10)45改为45H 3下面两条指令执行后,标志寄存器中CF,AF,ZF,SF和OF分别是什么状态?MOV DL,86ADD DL,0AAH答: 0101,0110 + 1010,1010 = 1,0000,0000 CF=1 AF=1 ZF=1 SF=1 OF=14在8086/8088CPU中可用于作地址指针的寄存器有哪些?答:有BX,CX,DX,BP,SI,DI (IP,SP,)5已知(SS)09l 5H,(DS)0930H,(SI)0A0H,(DI

20、)1C0H,(BX)80H,(BP)470H。现有一指令“MOV AX,OPRD”,如源操作数的物理地址为095C0H,试用四种不同寻址方式改写此指令(要求上述每个已知条件至少要使用一次)。答:(1)MOV AX,BP (2)MOV AX,BP+DI+80H (3)MOV AX,DI+0100H MOV AX,SI+0220H (4)MOV AX,02C0H 6试按下列要求分别编制程序段:() 把标志寄存器中符号位SF置1。() 寄存器AL中高低四位互换。() 由寄存器AX,BX组成一个32位带符号数(AX中存放高十六位),试求这个数的负数。() 现有三个字节存储单元A,B,C。在不使用ADD

21、和ADC指令的情况下,实现(A)+(B)=>C。() 用一条指令把CX中的整数转变为奇数(如原来已是奇数,则CX中数据不变,如原来是偶数,则(CX)+1形成奇数)。答:(1)MOV AH, 80HSAHF (2 ) MOV BL, 0FH AND BL, AL SAL 4 SHR 4 XOR AL, BL (3 ) MOV DX, 7FH SUB AX, DX MOV DX, 0FFH SUB DX, BX MOV BX, DX (4 ) MOV AH, FFH MOV BL, B SUB AH, BL MOV BH, A SUB BH, AH MOV C, BH (5 ) MOV AX

22、, CX NOT AX TEST 01H JNZ NEXT HLT NEXT: INC CX HLT7试给出下列各指令的机器目标代码:() MOV BL,12HSI() MOV 12HSI,BL() SAL DX,1() ADD 0ABHBPDI,1234H答: (1) ,=8ADF; (2) ,=885C; (3) ,=D1E2; (4) ,=8181.8执行下列指令后: STR1 DW AB STR2 DB 16DUP(?) CNT EQU $-STR1 MOV CX,CNT MOV AX,STR1 HLT寄存器CL的值是多少?寄存器AX的值是多少?答:寄存器CL的值为12H,寄存器AX的

23、值为4241H。9JMP FAR PTR ABCD(ABCD是符号地址)的转移方式是什么?答:JMP FAT PTR ABCD 的转移方式是段间直接转移.12运算型指令的寻址和转移型指令的寻址,其不同点在什么地方?答:运算型指令的寻址包括立即数寻址。寄存器寻址,直接寻址,寄存器间接寻址,寄存器相对寻址和基址加变址寻址方式。这些寻址方式中,CS,IP寄存器的内容不会发生变化。 转移型指令的寻址方式包括段内直接寻址,段内间接寻址,段间直接寻址,段间间接寻址。在后三种寻址方式中,CS,IP寄存器的内容发生改变。13如果TABLE为数据段中0032单元的符号名,其中存放的内容为1234H,当执行指令”

24、MOV AX,TABLE”和”LEA AX,TABLE”后,(AX)中的内容分别为多少?答:执行MOV AX , TABLE后(AX)=1234H执行LEA AX, TABLE 后 (AX)=0032.14.当指令”SUB AX,BX”执行后,CF=1,说明最高有效位发生了什么现象?对无符号数来说,操作结果发生了什么现象?答:执行指令SUB AX,BX后,CF=1,说明最高位发生了借位对无符号来说,操作结果发生了溢出。15.在1000H单元中有一条二字节指令JMP SHORT LAB,如果其中的偏移量分别为30H、6CH、0B8H,则转向地址LAB的值分别为多少?答:转向地址LAB的值分别为:

25、1000×10H+2H+30H=10032H1000×10H+2H+6CH=1006EH1000×10H+2H+B8H=100BAH16下面两个语句的区别在什么地方: X1 EQU 1000H X2=1000H答:“EQU”和“=”都可以作为赋值语句,但二者的区别是EQU伪操作中的表达式是不许重复定义的,而“=”伪操作则许重复定义。17.调用指令CALL可进行哪四种调用?答:调用指令CALL可进行段内直接调用,段内间接调用。段间直接调用。段间间接调用。18.(AL)=9AH,(BL)=0BCH,当分别进行下列指令运算后,请写出标志位ZF、PF、CF、SF的内容:(

26、 P8050)(1) ADD AL,BL(2) SUB AL,BL(3) AND AL,BL(4) OR AL,BL(5) XOR AL,BL答:(1)ADD AL,BL 1 0 0 1 1 0 1 0+)1 0 1 1 1 1 0 0 1,0 1 0 1 0 1 1 0 ZF=0,PF=1 CF=1 SF=0(2)SUB AL,BL 1 0 0 1 1 0 1 0 1 0 0 1 1 0 1 0)1 0 1 1 1 1 0 0 +)0 1 0 0 0 1 0 0 1 1 0 1 1 1 1 0 ZF=0 PF=1 CF=1 SF=1(3)AND AL,BL 1 0 0 1 1 0 1 0AN

27、D)1 0 1 1 1 1 0 0 ZF=0 PF=0 CF=0 SF=0 1 0 0 1 1 0 0 0 (4)OR AL,BL 1 0 0 1 1 0 1 0 OR)1 0 1 1 1 1 0 0 ZF=0 PF=1 CF=0 SF=0 1 0 1 1 1 1 1 0(5)XOR AL,BL 1 0 0 1 1 0 1 0XOR)1 0 1 1 1 1 0 0 ZF=0 PF=0 CF=0 SF=0 0 0 1 0 0 1 1 019.若(SP)=2800H,试用两种方法实现(SP)=27FEH答:方法一:执行一次PUSH指令 PUSH CX方法二:执行一次PUSHF指令20.试简述LES

28、 REG,SRC所完成的操作?答:LES REG,SRC 是将SRC和SRC+1中的偏移量送到REG 寄存器,而将SRC+2和SRC+3中的段基址送ES段寄存器。21.关系操作符EQ、NE、LT、GT、LE、GE计算的结果为逻辑值,试问0FFFFH代表假,0代表真是否正确?答:0FFFFH代表真。0表示结果为假。22.堆栈存取操作是以字节为单位的试分析当堆栈存入数据和从堆栈取出数据时SP的变化?答:当堆栈存入一个字时,(SP)<SP2从堆栈中取出一个字时(SP)<SP+223.试编写汇编程序段完成以下功能:将1000个字符的字符串从内存的BUFFER1搬移到内存的BUFFER2中去

29、。解答 LEA SI,BUFFER1 LEA DI,BUFFER2 MOV CX,1000 CLDREP MOVSb24.试编写汇编程序段完成以下功能:将数据段中100个字的数据块BLOCK1搬移到同一个数据段的BLOCK2中去。解答: LEA SI,BLOCK1 LEA DI,BLOCK2 MOV CX,100 CLDREP MOVSW25.试编写汇编程序段完成以下功能:比较DEST和SOURCE中的500个字节,找出第一个不相同的字节,如果找到,则将SOURCE中的这个数送AL中。解答: CLD LEA DI,DEST LEA SI,SOURCE MOV CX,500 REPE CMPB

30、JCXZ NEXT DEC SI MOV AL,BYTE PTRSINEXT:HLT26.试编写汇编程序段完成以下功能:求最大值,若自BLOCK开始的内存缓冲区中,有100个带符号的数,希望找到其中最大的一个值,并将它放到MAX单元中。解答:MOV BX,OFFSET BLOCKMOV AX,BXMOV CX,100ADD BX,2F0:CMP AX,BXJGE F1MOV AX,BXF1:ADD BX,2JCXZ NEXTJMP F0MOV MAX,AXNEXT:HLT27.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSH AX后,存放数据21H的物理地

31、址是多少?解答: 07H 21H <原栈顶20100 存放数据21H的物理地址是200FFH第六章9某系统中设置三片8259A级联使用,一片为主8259A;两片为从8259A;它们分别接入主8259A的IR2和IR6端。若已知当前主8259A和从8259A的IR3上各接有一个外部中断源,它们的中断类型码分别为A0H,B0H和C0H,已知它们的中断入口均在同一段中,其段基址为2050H,偏移地址分别为11A0H,22B0H和33C0H,所有中断都采用电平触发方式、完全嵌套、普通EOI结束,请(1)画出它们的硬件连接图;(2)编写全部初始化程序。解答:初始化程序:START:MOV AL ,19H MOV DX,偏移地址(主) OUT DX,AL MOV AL,0A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论