最新微型计算机技术及应用第四版习题和答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微型计算机技术及应用第四版习题和答案
微型计算机技术及应用(第四版)
习题和答案
第二章
1、8088与8086的区别
[解答] ①外部数据总线位数不同。8086外部数据总线16位,在一个总线周期内可以输入/输出一个字(16位数据),而8088外部数据总线8位,在一个总线周期内只能输入/输出一个字节(8位数据)。
②指令队列缓冲器大小不同。8086指令队列可容纳6个字节,且在每一个总线周期中从存储器取出2个字节的指令代码填入指令队列;而8088指令队列只能容纳4个字节,在一个机器周期中取出一个字节的指令代码送指令队列。
③部分引脚的功能定义有所区别。
(1) AD15-AD0的定义不同。在8086中都定义为地址/数据分时复用引脚;而在8088中,由于只需要8条数据线,因此,对应于8086的AD15-AD8这8根引脚在8088中定义为A15-A8,它们在8088中只做地址线用。
(2) 引脚28和34的定义不同。在最大方式下,8088的第34引脚保持高电平,在最小模式时,8088和8086的第28引脚的控制信号相反,而8086的第34引脚为BHE/S7,BHE用来区分是传送字节、还是字,8088的第34引脚为SS0,用来指出状态信息,不能复用。
(3) 引脚28的有效电平高低定义不同。8088和8086的第28引脚的功能是相同的,但有效电平的高低定义不同。8088的第28引脚为IO/M,当该引脚为低电平时,表明8088正在进行存储器操作;当该引脚为高电平时,表明8088正在进行I/O操作。8086的第28引脚为M/IO,电平与8088正好相反。
2、根据8086CPU的存储器读写时序图,请说明:
(1)地址信号应在哪些时间内有效?
(2)读、写动作发生在什么时间内?
(3)为什么读与写数据的有效时间长短不一样?
(4)T1状态下数据/地址线上是什么信息?数据信息是什么时候给出?
[解答] 地址信号只在T1状态时有效,并被锁存起来。读动作发生在T3、T4状态,而写动作发生在T2、T3、T4状态。读与写数据的有效时间长短不一样是因为CPU的速度与外设的速度不相匹配所造成的。T1状态下数据/地址线上是地址信息,数据信息是在T2状态,由AD15-AD0给出。
3、8086CPU形成三大总线时,为什么要对部分地址线进行锁存?用什么信号控制锁存?
[解答] 为了确保CPU对存储器和I/O端口的正常读/写操作,需要求地址和数据同时出现在地址总线和数据总线上。而在8086CPU中有AD0-AD15部分总线是地址/数据复用的,因此需在总线周期的前一部分传送出地址信息,并存于锁存器中,而用后一部分周期传送数据。8086CPU中是通过CPU送出的ALE高电平信号来控制锁存的。
4、BHE信号的作用是什么?试说明当起始地址为奇地址、偶地址、一次读写一个字节和一个字时,BHE和A0的状态。
[解答] BHE信号的作用是高8位允许引脚。若BHE为0则表示对一个字进行操作,即高8位有效,若BHE为1则表示对一个字节进行操作,即高8位无效。当起始地址为奇地址时,一次读写一个字节时,BHE为1,A0状态为1;当起始地址为偶地址时,一次读写一个字节时,BHE为1,A0状态为0;当起
始地址为奇地址时,一次读写一个字时,BHE为0,A0状态为1;当起始地址为偶地址时,一次读写一个字时,BHE为0,A0状态为0。
5、CPU在8086的微机系统中,为什么常用AD0作为低8位数据的选通信号? [解答] 在8086系统中,常将AD0作为低8位数据的选通信号,因为每当CPU 和偶地址单元或偶地址端口交换数据时, 在T1状态, AD0引脚传送的地址信号必定为低电平,在其他状态, 则用来传送数据.而CPU的传输特性决定了只要是和偶地址或偶地址端口交换数据,那么,CPU必定通过总线低8位(AD7- AD0)传输数据.可见,如果在总线周期的T1状态, AD0为低电平,实际上就指示了在这一总线周期中,CPU将用总线低8位和偶地址单元或偶地址端口交换数据。
6、系统中有多个总线模块时,在最大模式和最小模式下分别用什么方式来传递总线控制权?
[解答] 在最小模式下总线控制权是通过HOLD引脚来实现的,当系统中CPU 之外的另一个模块要求占用总线时,通过此引脚向CPU发一个高电平的请求信号。这时,如果CPU允许让出总线,就在当前总线周期完成时,于T4状态从HOLD引脚发出一个回答信号,对刚才的HOLD 请求作出响应。同时,CPU使地址/数据总线和控制状态线处于浮空状态。总线请求部件收到HLDA信号后,就获得了总线控制权。在最大模式下总线控制权是通过LOCK、 RQ/GT1,RQ/GT0引脚来实现的,首先,总线模块通过RQ/GT1向CPU发出一个请求信号,并通过RQ/GT0来接受CPU的响应,如果LOCK为低电平,则总线请求部件就获得了总线控制权。
7、8086CPU在内部结构上的主要特点是什么?
[解答] :8086CPU在内部结构上从结构上可分为:总线接口部件BIU和执行部件EU。它是16位微处理器有16根数据线20根地址线,内部寄存器、内部运算部件以及内部操作都是按16位设计的。
8、什么是流水线结构?流水线操作有什么好处?试举一个例子说明流水线操作的过程。
[解答] :流水线结构是把处理执行部件分成几个功能不同的处理执行部件,不同的处理执行部件就可以同时并行工作,分别负责不同的任务.这样的好处是可以实现多任务重叠执行,以提高效率。
例如:有一任务共可以分成N个子任务,每子任务需要时间T,则完成该个任务需要时间NT。若单独执行方式完成K个任务,则共需要时间K*NT。若采用流水线执行方式完成K个任务,则共需要时间NT+(K-1)T。当K较大时,很明显K*NT》NT+(K-1)T
9、画出8086CPU各寄存器图,并声明每个寄存器的作用。
[解答] 8086CPU各寄存器图如图:
1)四个通用寄存器:AX,BX,CX,DX既可以作16位寄存器使用,也可以作8位寄存器使用。
2)四个专用寄存器:BP用作基数指针寄存器,SP用作堆栈指针寄存器,SI 用作源变址寄存器,DI用作目的变址寄存器。
3)四个段地址寄存器:CS为16位的代码段地址寄存器,DS为16位的数据段地址寄存器,ES为16位的扩展段地址寄存器,SS为16位的堆栈段地址寄存器。
4)IP为16位的指令指针寄存器