微机原理 课后题 标准答案
时间:2023-12-12 20:07:02
类?
答:1.8086最多可有256个中断。
2.按为硬件中断和软件中断两类。
2.26 非屏蔽中断的特点是什么?可屏蔽中断的特点是什么?分别用于什么?
么场合?
答:1.非屏蔽中断的特点是:中断请求从NMI引腿进入标志不中断IF影响。只有一个非屏蔽中断,其中断型码为2。
2.可屏蔽中断的特点有:中断请求从INTR引腿进入,只有在IF=1时CPU响应应该中断。有几个可以屏蔽的中断,其中可以是5个中断类型码~255。
3.非屏蔽中断用于处理系统的主要故障,如断电。一般外部设备申请中断可用于屏蔽中断。
2.27 什么是中断向量?它在哪里?CH中断向量存储
在哪里?如果1CH5110中断处理子程序H:2030H一开始,如何存储中断向量?
答:1.中断处理子程序的入口地址为中断向量。 2.0段中断向量放在0段~3FFH在区域中断向量表中。
3.对应型号1CH00向量应放置在00070~00073H在四个单元中。
4.若1CH中断向量为5110H:2030H,中断向量的存储方法是:00070H存放30H,00071H存放20H (IP);00072H存放10H,00073H存放51H (CS)。
2.28 如果用户想定义8086/8088的中断向量表
中断应该选择什么范围?
答:中断类型代码应选择32(20)H)~255(FFH)范围。
2.29 如何找到非屏蔽中断处理程序的入口地址?
答:CPU在响应NMI中断引腿请求时,CPU中断向量的地址不需要从中断类型码计算,而是直接从中断向量表中读取0008~0000BH这4个单元对应于中断类型2的中断向量就行了。CPU将00008H、00009H装入两个单元的内容IP,而将0000AH、0000BH装入两个单元的内容CS,于是转入非屏蔽中断处理程序的执行。
2.30 描述可屏蔽中断的响应过程,可屏蔽中断或非屏蔽中断
为什么堆栈顶部堆栈顶部四个单元的内容?
答:首先在CPU的INTR引腿可屏蔽中断要求输入,IF=1。执行当前指令后,CPU发两个INTA外设接到第二个负脉冲后,立即将负脉冲中断响应CPU发送中断类型码。然后CPU取中断类型码,标志FR推进堆栈,清除IF和TF,再将CS和IP进入堆栈保护断点,进入中断处理子程序并执行,最后弹出IP和CS并中断返回标志。中断响应后,堆栈顶部四个单元的内容分别为:IPL、IPH、CSL、CSH。
2.31 当可屏蔽中断请求到来时,通常只要中断允许标记为1,
执行当前指令后可以回应。在什么情况下有例外?
答:1.正好相遇CPU在执行封锁指令时,在响应中断之前,必须等待下一个指令执行。 2.正好执行往段寄存器传送数据的指令,必须等下一条指令执行完后才响应中断。
3.执行WAIT或串行操作指令时,可在执行指令时中断响应。
2.32 修改堆栈指针时应特别注意哪些问题?为什么?
答:1.堆栈段寄存器必须先修改SS然后修改堆栈指针的值SP的值。
2.因为,CPU在修改部分的寄存器值时不响应中断,直到下一个指令执行。这是对的SS、SP修改是一个完整的过程。否则,先修改SP后修改SS它可能会中断响应并单独修改,导致堆栈指针错误,因此CS、IP、FR进入错误的堆栈区域,破坏单元的数据或程序。
2.33 在编写中断处理子程序时,为什么要在子程序中保护许多寄存
装置?有些寄存器需要保护,即使它们在中断处理子程序中没有使用,这就是为什么(在执行联系串操作指令时中断)?
答:1.中断处理子程序运行时需要使用CPU这些寄存器的内部寄存器值发生了变化。因此,如果返回原程序时不加保护地修改断点,程序将无法正常运行。
2.由于串操作指令允许在执行过程中中中断,如果与串操作相关的寄存器没有得到很好的保护,串操作指令在中断返回时无法正常运行。还有一个隐含的地址搜索问题。
2.34 当可屏蔽中断响应时,CPU要执行哪些阅读/写作周期?
零件中断怎么样?
答:1.中断可屏蔽响应,CPU读写周期如下: ① 执行两个中断响应总线周期。并获得中断类型码。 ② 执行总线写周期。标志寄存器FR值入栈。 ③ 执行总线写周期。CS值入栈。 ④ 执行总线写周期。IP值入栈。
⑤ 执行总线读取周期。读取中断处理子程序入口地址的偏移量→IP。 ⑥ 执行一个总线读周期。读取中断处理子程序入口地址的段地址→CS。 2.如果软件中断,跳过上述第一个①步,而执行②~⑥步。
2.35 中断处理子程序的结构模式是什么?
答:① 保护中断时的现场,即保护CPU各寄存器的值。
② 一般应置IF=1开放中断,允许高级中断请求进入。 ③ 具体内容中断处理。 ④ 中断时恢复现场。 ⑤ 中断返回指令。
2.36 软件中断有哪些特点?在中断处理子程序和主程序的关系上,
软件中断和硬件中断有什么区别?
答:1.软件中断有以下特点:
① 用中断指令进入中断处理子程序,由指令提供中断类型码。 ② 中断响应总线周期无需执行。 ③ 允许标志不中断IF的影响。 ④ 软件中断的优先级最高。 ⑤ 软件中断没有随机性。
2.软件中断允许在主程序和中断处理子程序之间传输数据。由于硬件中断是随机的,数据无法传输。
2.37 当系统中有多个总线模块时,在最大模式和最小模式下使用什么?
如何传递总线控制权?
答:1.8086/8088使用总线控制最小模式下的联系信号(HOLD和HLDA)传递总线控制权。
2.8086/8088使用总线请求/总线允许信号并在最大模式下释放信号RQ/GT0和
RQ/GT传递总线控制权。
2.38 8086的最大存储空间是多少?如何使用16位寄存器实现20位?
址的寻址?
答:1.8086最大的存储空间是220=1MB。
2.采用分段的方法实现16位寄存器实现对20位地址的寻址。
物理地址=段基址×10H 偏移地址
2.39 IBM PC/XT在系统中,哪个区域是显示缓冲区?存储哪个区域?
中断向量?FFFF0H到FFFFFH存储在单元中的内容是什么?
答:1.B0000H~B0F9FH约4KB显示缓冲区为单色显示器;B8000~BBF3FH约16KB显示彩色显示缓冲区。
2.00000H~003FFH共1KB该区域用于存储中断向量。
3.在FFFF0H到FFFFFH将无条件转移指令存储在单元中,并将其转移到系统的初始化程序中。
第三章 8086的搜索模式和指令系统 略 第四章 存储器和高速缓存技术
4.1 计算机内存的特点是什么?内存由哪两部分组成?外存一般是指
什么设备?外部有什么特点?
答:1.内存可被CPU直接访问,内存访问速度快,地址总线位数限制内存空间大小。
2.内存由ROM和RAM两部分组成。
3.外存一般是指软盘、硬盘、磁带机上的磁带和光盘。
4.外存的特点是容量大,存储的信息可以长期修改和保存。但外存速度慢,需要配置专用设备。
4.2 为什么用存储器组成内存时总是使用矩阵?请使用一个
说明具体例子。
答:1.为简化内存内部单元的地址译码电路选择,减少译码线数量。
例如,要组成1K字节的内存,如果不是矩阵组织这些单元,而是排列它们,需要1024条译码线才能找到这些单元的位置。因此,译码电路非常复杂。如果使用32×为了实现排列,只需要32行选择线和32行选择线。因此,其译码电路将变得相对简单。
4.3 一般采用哪些方法来节省存储器的地址译码电路?
答:① 存储器按矩阵排列; ② 按模块结构设计内存; ③ 然后在模块中进行分组处理。
4.4 在选择存储器件时,最重要的考虑因素是什么?此外,还应考虑
哪些因素?
答:1.最重要的考虑因素是:易失性、只读性、位容量和速度。 2.还应考虑功耗、可靠性和价格因素。
4.5 什么叫静态RAM?静态RAM特点是什么?
答:1.如果电源不断电,信息一旦写入就不会丢失RAM就叫静态RAM。 2.静态RAM其特点是:不需要刷新,因此简化了外部电路;但位容比较相似
设计的动态RAM功耗少,功耗大。
4.6 静态RAM为什么芯片上只写信号而不读信号?
数据可以从芯片中读取吗?
答:1.因为在存储器中,当允许信号有效时,必须进行读写操作,而不是写即读。因此,只写信号WE您可以控制写作操作和读取操作。写作时,脉冲发生器发送负脉冲作为写入信号;读取操作时,写作脉冲发生器不会产生负脉冲,而是会产生负脉冲WE端处于高电平,用作读取信号。
2.当芯片允许信号时CE=0及写信号WE=1.数据可以从芯片上读取。
4.7 读写静态存储器时,地址信号应分为几部分?
产生什么信号?
答:1.地址信号分为三部分。如:A19~A14,A13~A12,A11~A0。 2.例中A19~A14用作模块选择信号,地址译码器判断A19~A14给定的模块选择信号是否与本模块的约定信号匹配。如果匹配,则根据MRDC或MWTC产生内部模块选择信号;A13~A芯片允许信号产生4个矩阵;A11~A0作为矩阵内的行地址和列地址。
4.8 动态RAM工作的特点是什么?RAM比较,动态RAM
有什么优点?有什么?足之处?动态RAM一般用在什么场合?
答:1.动态RAM工作时需要对其存储的信息定时(约2ms)刷新一次。因此需要刷新控制电路来支持。
2.动态RAM的优点(长处)为:动态RAM的位密度高;动态RAM的功耗较低;动态RAM的价格低廉,适合于大容量使用。
3.动态RAM的缺点(不足之处)为:要配置刷新逻辑电路;在刷新周期中,内存模块不能启动读周期或写周期。
4.动态RAM一般用在大容量、低功耗场合。
4.9 动态RAM为什么要进行刷新?刷新过程和读操作比较有什么
差别?
答:1.因为动态RAM是利用电容的存储作用来保存信息的,但电容由于放电或泄漏,电荷保存时间较短(约2ms),若不及时补充电荷会使存放的数据丢失,因此需定时刷新以补充所需要的电荷。
2.刷新过程是由刷新逻辑电路定时完成的,且每次对所有模块的一行同时刷新,数据不输出,数据总线处于高阻状态。读过程是随机的,每次选中一个存储单元(8位),且数据输出到数据总线上。
4.10 动态RAM控制器完成什么功能?Intel 8203从功能上分为哪两
部分?叙述这两部分的工作原理。
答:1.动态RAM控制器要完成的功能有:刷新定时器产生刷新周期并提供各种时序信号,并对CPU的读/写操作及刷新操作进行仲裁;刷新地址计数器提供刷新用的行地址,并通过多路转换器进行地址切换。
2.Intel 8203从功能上分为:地址处理部分和时序处理部分两个。
3.地址处理部分用来处理动态RAM正常读/写时的地址信号(正常的行/列地址合用一组地址线的区分)和刷新过程中的地址信号(区分正常的行地址及刷新周期的行地址)。时序处理部分通过一个基准时钟来产生各种时序;通过一个仲裁器来解决刷新请求和内存正常读/写请求之间的矛盾。内部有两级同步电路用来对外部请求信号实现同步。

