微机原理习题答案3

上传人:平*** 文档编号:9260687 上传时间:2017-10-02 格式:DOC 页数:11 大小:135.46KB
返回 下载 相关 举报
微机原理习题答案3_第1页
第1页 / 共11页
微机原理习题答案3_第2页
第2页 / 共11页
微机原理习题答案3_第3页
第3页 / 共11页
微机原理习题答案3_第4页
第4页 / 共11页
微机原理习题答案3_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《微机原理习题答案3》由会员分享,可在线阅读,更多相关《微机原理习题答案3(11页珍藏版)》请在金锄头文库上搜索。

1、1微型计算机原理习题 3(P117)参考答案(部分题号与教材有错位,请注意)3.1 为什么要研究 8086/8088 微处理器及其系统?这比直接研究 32 位微处理器及其系统有何优缺点?解:尽管 8086/8088 后续的 80286、80386、80486 以及 Pentium 系列 CPU 结构和功能已发生很大变化,但从基本概念与结构以及指令格式上来讲,他们仍然是经典的 8086/8088CPU 的延续与提升。3.2 8086 CPU 有多少根数据线和地址线?它能寻址多少内存地址单元和 I/O 端口?8088CPU又有多少根数据线和地址线?为什么要设计 8088CPU?解:8086 CPU

2、 有 16 根数据线和 20 根地址线,可寻址 1MB 存储单元和 64KB 的 I/O 端口。8088 CPU 有 16 位内部数据线和 8 条外部数据总线,20 根地址线。8088 CPU 是 8086 CPU 的向下兼容版,这样设计主要为了与 INTEL 原有的 8 位外围接口芯片直接兼容。3.3 8086 CPU 内部按功能可分为哪两大部分?他们各自的主要功能是什么?解:从功能上讲,8086 可分为两个部分,即总线接口单元(bus interface unit,BIU)和执行单元(execution unit ,EU) 。总线接口单元(BIU)的功能是负责 CPU 与存储器或 I/O

3、设备之间的数据传送。EU 的功能只是负责执行指令;执行的指令从 BIU 的指令队列缓冲器中取得,执行指令的结果或执行指令所需要的数据,都由 EU 向 BIU 发出请求,再由 BIU 经总线控制电路对存储器或外设存取。 3.4 8086 CPU 内部的总线接口单元 BIU 由哪些功能部件组成?他们的基本操作原理是什么?解:BIU 内有 4 个 16 位的段地址寄存器 CS、DS 、SS 和 ES,16 位指令指针 IP,6 字节指令队列缓冲器,20 位地址加法器和总线控制电路。基本操作原理是 BIU 要从内存取指令送到指令队列缓冲器;CPU 执行指令时,总线接口单元要配合执行单元从指定的内存单元

4、或者外设端口中取数据,将数据传送给执行单元,或者把执行单元的操作结果传送到指定的内存单元或外设端口中。3.5 什么叫微处理器的并行操作方式?为什么说 8086 CPU 具有并行操作的功能?在什么情况下 8086 的执行单元 EU 才需要等待总线接口单元 BIU 提取指令?解:并行操作,就是 CPU 执行完 1 条指令后就可以立即执行下一条指令,而不需要像以往 8位 CPU 那样重复的进行先取指令和后执行的指令串行操作。16 位 CPU 的这种并行操作的特点,提高了总线的信息传输效率和整个系统的执行速度。只有当遇到转移指令、调用指令或返回指令时,或者当某一条指令在执行过程中,需要频繁访问内存以至

5、于总线接口单元没有空闲从内存将指令提取到指令队列中时,才需要等待总线接口单元 BIU 提取指令。3.6 逻辑地址和物理地址有什么区别?为什么 8086 微处理器要引入“段加偏移”的技术思想?段加偏移的基本含义又是什么?试举例说明。解: 逻辑地址由 16 位段地址和 16 位段内偏移量(又称有效地址)组成,程序中指令必须通过逻辑地址访问内存。物理地址是由 20 条地址线信号指示的内存地址,在电路中必须使用这 20 条物理的地址信号线访问内存。物理地址 =段地址16+有效地址。参考教材: P54 第 311 行 P56 “2。段寄存器”的第 1 段 P70 “3。3。5 段加偏移 寻址机制允许重定

6、位”2段加偏移的基本含义是:将段寄存器内容左移 4 位后与 16 位偏移地址相加。例:假设CS=FA00H,IP=0300H,这是物理地址为 0FA300H。3.7 在微处理器中设置指令队列缓冲器有什么作用?8086 与 8088 CPU 中的指令队列有何区别?解:指令队列缓冲器在执行指令的同时,可以从内存中取下面一条或几条指令,取来的指令就依次暂放在指令队列中。区别:8086 指令队列为 6 个字节,8088 为 4 字节;8086 指令队列只要空出 2 个,而8088 只要空出 1 个指令字节时,BIU 便自动执行取指操作,直到填满为止。3.8 8086 CPU 的基址寄存器 BX 和基址

7、指针(或基址指针寄存器)BP 有何区别?基址指针BP 和堆栈指针 SP 在使用中有何区别?解:基址寄存器 BX 在查表指令 XLAT 中存放表的起始地址,而基址指针 BP 用来存放堆栈地址。指针寄存器 SP 和 BP 都用来指示存储位于当前堆栈段中的数据所在的地址,但 SP 和 BP在使用上有区别。入栈和出栈指令是由 SP 给出栈顶的偏移地址,故称为堆栈指针寄存器。而BP 则是存放位于堆栈段中的一个数据区的基地址的偏移地址,故称为堆栈基址指针寄存器。 3.9 段地址和段起始地址相同吗?两者是什么关系?8086 的段起始地址就是段基址吗?它是怎样获得的?解:不同。为了使 8086/8088 CP

8、U 能够寻址 1MB 内存空间,在其内部设计了一组 16 位的段寄存器,用这些段寄存器的内容作为段地址,再由段寄存器左移 4 位形成 20 位的段起始地址。8086 的段起始地址就是段基址。由段寄存器左移 4 位形成 20 位的段基址。3.10 微处理器在实模式下操作时,段寄存器的用途是什么?解:为了使 8086/8088 CPU 能够寻址 1MB 内存空间,在其内部设计了一组 16 位段寄存器,用这些段寄存器的内容作为段地址,再由段寄存器左移 4 位形成 20 位的段起始地址,它们通常被称为段基址;这样,8086/8088 就有可能寻址 1MB 存储空间并将其分为若干个逻辑段,提供在内存中的

9、重定位功能。3.11 在实模式下,若段寄存器中装入如下数值,试写出每个段的起始地址和结束地址。(1)1000H (2 )1234H (3)E000H (4)AB00H解:(1)起始地址:10000H 结束地址:10000H+FFFFH=1FFFFH(2)起始地址:12340H 结束地址:12340H+FFFFH=2233FH(3)起始地址:E0000H 结束地址:E0000H+FFFFH=EFFFFH(4)起始地址:AB000H 结束地址:AB000H+FFFFH=BAFFFH3.12 微处理器在实模式下操作,对于下列 CS:IP 组合,计算出要执行的下条指令的存储器地址。(1)CS=1000

10、H 和 IP=2000H (2)CS=2400H 和 IP=1A00(3)CS=1A00 和 IP=B000H (4)CS=3456H 和 IP=ABCDH解:(1)下条指令地址:10000H+2000H=12000H(2)下条指令地址:24000H+1A00H=25A00H(3)下条指令地址:1A000H+B000H=25000H(4)下条指令地址:34560H+ABCDH=3F12DH 3.13 8086 在使用什么指令时,用哪个存储器保存记数值?解:在使用无条件重复指令 REP 时,CX 寄存器用来保存记数值;在使用循环控制指令 LOOP 时,CX 寄存器用来保存记数值。3.14 IP

11、寄存器的用途是什么?它提供的是什么信息?解:简单地说,IP 寄存器指示即将执行的下一条指令的段内偏移地址。一般情况下,CPU 每取一个指令字节,IP 就自动加 1,从而保证程序的顺序运行。程序控制类指令改变 IP 值,从3而改变程序的运行顺序。3.15 8086 的进位标志位有哪些运算指令来置位?解:当执行加法、减法、乘法指令、BCD 调整指令、移位和循环指令都会影响进位标志,但使 CF 置位的运算指令只有 NEG 指令(STC 不算运算指令) 。 3.16 如果带符号数 FFH 与 01H 相加,会产生溢出吗?解:0FFH+01H=0H ,所以不会产生溢出。3.17 某个数包含有 5 个 1

12、,它具有什么奇偶性?解:奇偶性为奇,标志 PF=0 3.18 某个数为全 0,它的零 标志位为 0 吗?(题目不好 ,应该改为:某指令执行后,其结果为全0,它的零标志位为 0 吗?)解:不为 0,零标志 ZF=13.19 用什么指令设置哪个标志位,就可以控制微处理器的 INTR 引脚?解:用 STI 和 CLI 指令控制 IF 标志,就可以控制微处理器的 INTR 引脚。3.20 微处理器在什么情况下才执行总线周期?一个基本的总线周期由几个状态组成?在什么情况下需要插入等待状态?解:为了从存储器中取得指令或者与一个存储单元或 I/O 接口单元传送数据,需要它的总线接口单元执行一个总线周期。一个

13、总线周期由 T1、T 2、T 3 和 T4 这四个状态。由于外设或存储器的速度较慢,不能及时的配合 CPU 传送数据。这时,外设或存储器就会通过“READY”的信号线在 T3 状态启动之前向 CPU 发一个 “数据未准备好”信号,表示他们还来不及同 CPU 之间传送数据,于是,CPU 会在 T3 之后自动插入一个或多个附加的时钟周期 TW,这个 TW 就叫等待状态。3.21 什么叫做非规则字,微处理器对非规则字是怎样操作的?解:对内存中存放的字数据,其低位字节在奇数地址开始存放,称为非规则存放,存放的字叫非规则字。8086 对非规则字必须分两次访问。3.22 8086 对 1MB 的存储空间是

14、如何按高位库和低位库来进行选择和访问的?用什么控制信号来实现对两个库的选择?解:8086 的 1MB 存储空间分为两个 512KB 的存储体,又称存储库,分别叫高位库和低位库,低位库与数据总线 D7D0 相连,该库中每个单元的地址均为偶数地址,高位库与数据总线D15D8 相连,该库中每个单元的地址均为奇数地址。用 A0 对低位库和用 BHE 对高位库实现选择控制。3.23 堆栈的深度由哪个寄存器确定?为什么说一个堆栈的深度最大为 64kB?在执行一条入栈或出栈命令时,栈顶地址将如何变化?解:堆栈的深度由堆栈指针 SP 来确定。因为存储器中包括堆栈段在内的每一个逻辑段至多可包含 64KB 长的连

15、续存储单元,所以一个堆栈的深度最大为 64KB。执行 PUSH s 指令时,先 SPSP2,再SS:SPS执行 POP d 指令时,先 dSS:SP,再 SPSP+23.25 8086/8088CPU 对 RESET 复位信号的复位脉冲宽度有何要求?复位后内部寄存器的状态如何?解:RESET 复位信号的复位脉冲宽度不得小于 4 个时钟周期。复位后各个寄存器状态如下:CS=0FFFFH,DS=ES=SS=0 , F=0,指令队列清空。3.26 ALE 信号起什么作用?它在使用时能否被浮空?DT/R 信号起什么作用?它在什么情况下被浮置为高阻状态?解:它是 8086/8088 提供给地址锁存器 8

16、282/8283 的控制信号,高电平有效。 ALE 在使用时不能被浮空。4在使用 8286/8287 作为数据总线收发器时, DT/R 信号用来控制 8286/8287 的数据传送方向。在 DMA 方式时,它被置为高阻状态。3.27 8086/8088CPU 的哪些引脚采用了时分复用技术? 哪些引脚具有两种功能?解:地址/数据总线 AD15AD0,地址/状态总线 A19/S6A16/S3,BHE/S 7 采用了分时复用技术。MN/MX、DT/R、M/IO、RQ/GT1、RQ/GT0 具有两种功能。3.28 8086/8088CPU 的微机系统有哪两种工作方式?它们由什么引脚来实现控制?这两种工作方式的主要特点和区别如何?解:8086/8088 CPU 微机系统有最大和最小两种工作方式。他们由 MN/MX 引脚实现控制。MN/MX

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号