微机原理与接口技术(楼顺天编着)课后第八章习题答案_第1页
微机原理与接口技术(楼顺天编着)课后第八章习题答案_第2页
微机原理与接口技术(楼顺天编着)课后第八章习题答案_第3页
微机原理与接口技术(楼顺天编着)课后第八章习题答案_第4页
微机原理与接口技术(楼顺天编着)课后第八章习题答案_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

第八章中断系统和可编程中断控制器8259A1.什么是中断?8086计算机系统中有几种不同类型的中断?答:在CPU运行程序时,由于特定事件,CPU暂停当前正在运行的程序,运行处理事件的中断服务程序,然后返回到CPU原来中断的程序,继续执行,直到中断服务程序完成运行。此过程称为中断。8086计算机系统具有3种中断:1)外部屏蔽中断。2)外部非屏蔽中断。3)内部中断2.什么是中断类型?那有什么用?a:中断源号,通常称为中断类型号,指定为多位二进制代码。8086微处理器是具有256个不同中断的8位二进制代码,表示一种中断类型。这种中断可以分为内部中断、外部非屏蔽中断和外部屏蔽中断三类。用途:使CPU识别中断源,以便正确切换到与中断源相对应的中断服务程序门户。3.什么是中断嵌套?使用中断复叠有哪些优点?对于可阻挡中断,实现中断嵌套的条件如下什么?答:如果微处理器在处理低级中断的同时发出高级中断请求,微处理器将停止运行低级中断的处理程序,优先处理高级中断,在高级中断处理完成后运行低级未处理的程序。这种中断处理成为中断嵌套。使用中断嵌套的优点是提高中断响应的实时性能。对于某些实时要求较高的任务,必须采取较高的优先级和中断嵌套方法,以便系统能够及时发出中断请求。对于可屏蔽中断,实现中断嵌套的条件是:(1)微处理器处于允许中断状态(IF=1)(2)中断请求高于运行的中断处理程序。(3)中断请求未被8259阻止。(4)没有不可屏蔽的中断请求和总线请求。4.什么是中断矢量?中断类型号码为1FH的中断向量为2345H:1234H,表示中断方向指标的存储位置。a:中断向量是每个中断服务子例程的入口地址,32位(16位偏移地址和16位段地址),在中断量表中占用4个地址单位。在配置有8086CPU的计算机系统中,使用最低的1024个地址单元(称为0页)存储中断向量。这1024个地址单元成为中断量表。因此,中断类型号位1FH的中断向量在中断方向表中存储为1FH4=07CH。中断类型号为1FH的中断向量存储在中断表中,如图8.1所示。图8.1中断类型号为1FH的中断矢量在中断尺度中的位置5.中断量表的功能是什么?说明CPU使用中断量表转到中断服务程序的过程。答:中断比例用于存储中断矢量。是中断类型号和相应的中断服务程序门户地址之间的转换表。1) CPU获取中断类型号n,然后将当前PSW、CS和IP的内容按堆栈方式按下,以存储中断点的状态和中断点地址,并在返回时恢复。2)通过将PSW的IF位和TF位归零来关闭中断。3)将地址4n和4n 1两个单元的16位作为中断服务程序入口的偏移地址放入IP中,将地址4n 2和4n 3两个单元的16位作为中断服务程序入口的段地址放入CS中。4)迁移到中断服务程序。描述可以屏蔽中断的响应过程。答:当IF位为1时,从联接中断请求信号的INTR方开始,进入中断服务程序之前所经历的一系列操作称为屏蔽中断响应过程。首先等待当前指令结束,然后进入中断响应周期。然后,从微处理器外部的中断控制逻辑中获取中断类型号。然后按下当前PSW、CS和IP的内容,并将PSW中的IF位和TF位清除为零。最后,将中断服务程序的入口地址放在IP和CS中。这样就完成了屏蔽中断的响应进程,并启动了中断服务进程。7.概述了8259A内部IRR、IMR和ISR三个寄存器的作用。A: IRR:锁定从外部设备发送的中断请求信号的中断请求寄存器。当外部中断请求行中存在中断请求时,IRR的第I位将设置为1。寄存器内容可以由微处理器读取。IMR:用于设置中断请求的屏蔽信号。如果此寄存器的I位设置为1,对应的外部中断请求行将被阻止,并且无法向微处理器发送INT信号。ISR:用于记录当前正在服务的所有中断级别,包括在服务尚未完成的情况下被较高优先级中断的中断级别。微处理器响应中断请求时,ISR中相应的I位置1。在中断处理结束之前,必须用命令清除此分钟。8.中断控制器8259A的初始化编程如何开始?答:初始化编程是初始化命令词(ICW)的初始化,ICW初始化有一定的顺序,必须从ICW1开始。中断控制器8259A的初始化编程顺序如图8.2所示。图8.2中断控制器8259A初始化编程顺序9.设置计算机系统需要管理64级中断,并询问配置中断机构是否需要8259A。解决方案:一个8259控制8级中断,一个可以级联8个8259,将中断扩展到64级。因此,配置中断机构共需要9个8259个。10.如何对完全嵌套的优先级排序的规则是什么?如何设置此方法?答:在完全嵌套方法中,中断优先级级别是固定的。也就是说,优先级最高,级别最低。初始化8259A后,如果未设定其他优先顺序等级,8259A将以完全巢状方式运作。11.设备D1、D2、D3、D4、D5根据完全嵌套的优先级排序规则。设备D1的优先级最高D5是最低的。每个设备的中断处理程序的顺序是下一个中断请求(假定所有中断处理程序启动后都存在STI指令,并且在返回中断之前发出结束命令)(1)设备3和4同时发出中断请求。(2)设备3和4同时发出中断请求,并且设备2在设备3的中断处理程序完成之前发出中断请求;(3)设备1、3、5同时发出中断请求,并且设备2发出中断请求,直到设备3的中断处理程序完成。解决方案:(1)设备3和4同时发出中断请求。中断处理顺序是图8.3(a)中所示的D3D4。图8.3(a)设备3和4同时运行中断请求的中断处理程序的顺序图(2)设备3和4同时发出中断请求,并且设备2在设备3的中断处理程序完成之前发出中断请求;中断处理顺序为D3D2D3D4,如图8.3(b)所示。图8.3(b)中断处理程序的顺序图(3)设备1、3、5同时发出中断请求,并且设备2发出中断请求,直到设备3的中断处理程序完成。中断处理顺序为D1 D3 D3 D5,如图8.3(c)所示。图8.3(c)中断处理程序的顺序图12.8259A如何管理中断优先级?答:8259A使用优先级处理器来确定和管理中断请求信号的优先级。当多个中断请求信号同时发生时,优先级处理器根据控制逻辑中确定的优先级级别和IMR的内容确定这些请求信号的最高优先级。微处理器响应中断请求时,将最高优先级的IRR中的“1”发送到ISR。当8259A在一个级别中断服务的同时发出新的中断请求时,优先级处理器判断新发生的中断请求是否高于正在处理的级别。如果是,则开始处理多个中断。13.特殊完全嵌套方式的特点是什么?其用途是什么?答:多片8259级联时,主片必须以特殊的完全嵌套方式工作。假设片以完全嵌套的方式连续两次收到中断请求,并且第二个中断请求的优先级较高,则该片通过INT pin向上一级中断两次。如果主片完全嵌套,则同一插针上的第二个中断请求没有响应。使用特殊的完全嵌套方法时,请求会响。14.向8259A发送“终止中断”命令有什么效果?8259A如何终止中断?分析每一个的优缺点。答:通过向8259A发送“终止中断”命令,使相应的中断级别处于ISR中相应的位清理“0”,表示相应的中断处理结束。8259A具有自动中断关闭(AEOI)和自动中断关闭(EOI)。(1)自动中断终止(AEOI)。在这种情况下,当系统进入中断响应时,8259A在第二个中断响应周期信号之后,ISR自动将响应中断级别的相应位显示为“0”。这是可以通过初始化命令设置的最简单的中断终止处理方法,但是仅在系统中只有一个8259A,并且多个中断不嵌套的情况下才能使用。(2)非自动中断终止(EOI)。在此工作方式中,在从中断服务程序返回之前,程序必须在8259A上输出中断关闭命令(EOI),并将ISR与“0”对应。一般中断终止方法和特殊的中断终止EOI命令。如果系统中有多个8259A或嵌套在多个中断中,则可以使用此方法,但它比自动中断关闭方法更复杂。然后,如果程序忘记以这种方式对应ISR 0,则8259A在正常情况下不再响应此中断和低于此级别的中断请求。15.初始化8259A时,如果不是自动关闭,那么在服务中断程序关闭时,应该设置什么行为下令吗?如果不设置这样的命令,会发生什么现象?即使在初始化时设置为自动关机方法,也需要设置此任务吗?答:必须发送中断终止命令。也就是说,操作控制单词的EOI位中必须写1。如果不设置这些命令,当相应的中断服务程序退出时,CPU不会响应优先级较低的中断请求和自身的下一个中断请求。如果初始化为自动关闭,则无需设置此操作。16.在什么情况下需要使用CLI命令禁用中断?在什么情况下需要使用STI命令停止?回答:对于带有前缀的命令,前缀包括段寄存器前缀(例如,命令moax、cs : var)、重复前缀(例如,命令REP MOVSB)和LOCK前缀。由于指令前缀只是指令的一部分,而不是单独的指令,因此在前缀代码和脚本之间不允许响应中断,因此必须在此指令之前,将CLI(中断释放)命令附加到此指令之后,将STI(中断打开)命令附加到此指令之后。对于目标地址为段寄存器的MOV和POP命令(不包括CS),本命令后面不允许对中断作出响应,必须执行命令到最后才能对中断作出响应。此时,可以在命令前添加CLI,在命令后添加STI。如果需要中断嵌套,由于微处理器在响应中断时将IF处理为零,因此需要在中断处理程序中添加中断命令,以便实现中断嵌套。17.一个系统中有两个8259A,从片的请求信号连接到主片的IR2针,设备a停止连接请求信号电影IR5针。在一个I/O操作完成后,通过两个8259A向8086申请中断的8086微处理器通过两个8259A响应来响应中断,进入设备a的中断服务程序,发送中断终止命令,并返回中断点的整个过程。答:在I/O操作完成一次后,8259A在片中断请求输入端IR5生成中断请求。中断请求在片IRR上锁定8259A,并通过IMR“屏蔽”优化优先级电路。控制逻辑接收中断请求,在8259A主片IR2针上输出INT信号,中断请求锁定在8259A主片IRR上,被IMR“屏蔽”,最终针对优先级电路进行优化。控制逻辑接收中断请求,并将INT信号输出到CPU。CPU从INTer针接收8259A主片的int信号,并连续两次进入周期。优先级电路设置ISR的对应位,当接收到第一信号时,8259A主片将当前申请中断的8259A从片的ID代码010通过cas 0到cas 2发送到相应的8259A从片。因此,当8259A从片接收第二信号时,将中断类型号n发送到数据线。在8086CPU获得中断类型号n后,它将在比例单元中分别获取IP和CS,以便与N4和N4 2相对应的中断向量进入设备a的中断服务程序。在中断服务进程终止之前(即,在运行IRET命令之前),必须分别向片8259和默认片8259发送EOI中断终止命令,然后运行IRET命令返回中断点。18.8086系统将中断系统配置为主中断类型号从10H开始的三个8259A级联。在电影的中间中断申请以20H,30H开始,分别用于主片的IR4和IR6针脚。主片和从属片由上升触发,没有自动中断终止。主片使用特殊的完全嵌套方法,从属片使用完全嵌套方法。编写初始化程序。A: 8259A主片的端口地址为20H(A0=0)和21H(A1=1);第一个8259A从属片的端口地址为50H(A0=0)和51H(A1=1);第二个8259A从属片主胶片:MOV AL,0001b:边缘触发器,级联OUT 20H,ALMOV AL,00010000B;中断类型号10H至17HOUT 21H,ALMOV AL,01010000B;和连续的从属切片OUT 21H,ALMOV AL,0001b:特殊完全嵌套、非缓冲、非自动中断终止OUT 21H,AL在片1上:MOV AL,0001b:边缘触发器,级联OUT 50H,ALMOV AL,00100000B;中断类型号20H-27HOUT 51H,ALMOV AL,00000100B;INT销连接主节点OUT 51H,ALMOV AL,00000001B;完全嵌套、非缓冲、非自动中断结束OUT 51H,AL在电影2

温馨提示

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

评论

0/150

提交评论