第6章.-输入与输出中断-3.ppt

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

1中断是一种让CPU挂起正在执行的程序而转去处理特殊事件的操作。3中断源(1)一般的输入输出设备。(2)数据通道中断源。(3)实时时钟。(4)故障引起的中断。如电源掉电等;(5)由中断指令或软件故障引起的中断。一8086/8088中断类型二中断处理过程三中断响应过程四中断指令五中断服务子程序设计

二中断的一般处理过程一个中断过程应该包含以下五个过程: (1)中断请求 (2)中断判优 (3)中断响应 (4)中断处理 (5)中断返回1中断请求当中断源需要CPU为其服务时,首先送出中断请求信号。中断信号可以由中断指令或是某些特定条件产生,也可以是通过CPU引脚向CPU发出中断请求信号而产生。中断请求信号分为边沿触发和电平触发。2中断判优中断判优:确定当前所有中断请求中优先级最高的那个中断源。根据中断源的轻重缓急给予一个中断优先权级别,优先权级别最高的中断源将首先得到响应。2)中断优先权管理(1)软件确定中断优先权软件法是在CPU响应中断后,用软件查询确定哪个中断源申请中断,先被查询的先响应。查询次序决定了中断优先权次序,最先被查询的中断源具有最高的优先权。(2)硬件确定中断优先权由硬件实现中断优先权的判别。*常用的硬件电路有:中断向量法,链式优先权排队电路及专用硬件电路等。*中断向量法:利用一个中断优先级判别器来判断中断请求优先级的高低,获得中断类型码并由此获得中断服务程序入口地址;如利用中断控制器8259A,它具有8个优先权控制,可以通过级联,扩展至64级优先权控制,且每级中断都可设置为允许或屏蔽。3中断排队和中断响应CPU通过中断判优确定了要响应的中断源后,发出中断响应信号,进入中断响应,并自动完成以下步骤:①关中断;②保护断点,将正在执行的程序地址(断点)入栈③保护现场,标志寄存器FR自动入栈;④获得中断服务程序入口地址。中断服务程序入口的获取:中断向量8086/8088的中断系统是根据中断类型码从中断向量表中取得中断服务程序的入口地址的。中断向量表包含256个中断向量。每个中断向量占用两个字(4个字节),高地址字为中断服务程序所在代码段的段基址,低地址字为代码段中中断服务程序第一条指令的偏移量。4中断处理和中断返回中断处理是指CPU执行中断服务程序。中断服务程序一般流程:中断服务程序应包括:①保护现场,CPU响应中断时自动保护断点,寄存器则由程序员决定是否要入栈;②开中断,CPU响应中断时,自动执行关中断操作。要实现中断嵌套,必须在中断服务程序中开中断;③执行中断处理程序,对中断源作相应的处理,是中断服务程序的核心;④关中断,若中断服务程序设置了开中断,则此时应该关中断,以保证恢复现场的操作不被打断;⑤恢复现场,按后进先出的原则,将锁保存的寄存器按压栈的反序依次弹出;⑥中断返回,从堆栈中弹出断点和标志信息,保证北中断的程序从断电处继续往下执行。三中断响应过程NMI中断不受IF标志位的影响,CPU响应NMI中断时没有中断响应周期。CPU自动按中断类型码2来计算中断向量的地址,其后中断处理过程和内部中断响应一样。内部中断被响应时,没有中断响应周期。对于除法错误中断、溢出中断、单步中断,中断类型码自动形成,对于INTn则有n定。CPU实际执行的过程如下:①CPU取得中断类型码后,左移两位,计算出中断向量的存放地址;②FR入栈;③IF置零,TF置零;④保护断点,CS入栈;IP入栈;⑤中断向量低字送IP;中断向量高字送CS。⑥转入中断服务程序执行五中断服务子程序设计

设计中断子程序的步骤如下:选择一个中断向量。将中断子程序的入口地址置入中断向量表的相应表项中。(2)中断子程序的入口地址置入中断向量表的方法①是用数据传送指令将中断服务子程序入口相对地址存放在物理地址为4×n的字单元中,将中断服务子程序入口段地址存放在物理地址为4×n+2的字单元中。②采用DOS置新中断向量的中断功能(25功能),即: 向量号21H功能号25H入口参数:DS=中断服务子程序入口段地址;DX=中断服务子程序入口相对地址;AL=新增的向量号。2外部非屏蔽中断响应过程3内部中断响应过程四中断指令STI——开中断指令将标志寄存器中的中断标志位IF置1,允许CPU响应来自INTR引

文档评论(0)

177****7891 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档