第6章 微型计算机的中断系统.ppt

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

6.1 中断原理 6.1.1 中断的基本概念 2.中断源 引发中断的事件称为中断源 内部中断(在CPU内部的中断源): 程序异常(运算溢出等), 陷阱中断(例如,单步运行程序等), 软件中断(执行特殊指令)等。 外部中断(发生在CPU外部的中断): 外部故障(电源故障,存储器读写校验错) 外部事件(定时时间到,外部特殊信号) IO事件(外部设备完成一次IO操作,请求数据传输) 3.中断识别 用若干位二进制表示的中断源的编号。 4.中断断点 由于中断的发生,某个程序被暂停执行。 该程序中即将执行,由于中断没有被执行的那条指令的地址称为中断断点,简称断点。 5.中断服务程序 处理中断事件的程序段称为中断服务程序。 如:故障中断服务程序,输入输出中断服务程序。 不同类型的中断需要不同的中断服务程序。 中断服务程序不同于一般的子程序: 子程序由某个程序调用,它的调用是由程序设定的,它的执行时间是确定的。 中断服务程序由某个事件引发 ,它的执行一般是随机的,不确定的。 6.中断系统 为实现计算机的中断功能而配置的相关硬件、软件的集合称为中断系统。 6.1.2 计算机采用中断控制技术主要用在以下方面: 6.1.3 中断管理 2. 中断源的识别 软件识别: 响应中断后, CPU进入中断处理程序。 在这个程序里,CPU逐个查询各中断源的状态,确 定是哪一个设备申请了中断。 硬件识别: 响应中断后, CPU进入一个“中断响应周期”。 在这个周期里,申请中断的设备向CPU发送它的中断类型。 3.中断的优先权 (级) 优先权(级):有多个中断源同时提出中断请求时,CPU响应中断的优先次序。根据中断源提出中断申请的轻重缓急为每个中断源确定CPU对它们响应的优先权。CPU在分配优先权时,一般是按照提出中断的外设的速度和它们在微机系统中所处的地位来进行分配的。 在PC机系统中,中断源的优先权由高到低的顺序依次为:除零数、INT n、INT 0、NMI、INTR、单步执行中断。 4. 中断嵌套 CPU在处理中断过程中,如果出现了级别更高的中断 请求,CPU停止执行低级中断的处理程序而去优先处 理高级中断。 等高级中断处理完毕后,再接着执行低级的未处理完 的程序。 这种中断处理方式称为多重(级)中断或中断嵌套。 CPU在响应中断时已将IF清零,一定要在中断处理程 序中加入开中断指令,才有可能进行中断嵌套。 中断嵌套 6.1.4 中断过程 2.中断响应 (1) 响应可屏蔽中断必须同时具备以下条件: CPU处于允许中断状态(IF=1); 没有不可屏蔽中断请求和总线请求; 当前指令执行结束。 (2) 响应不可屏蔽中断必须同时满足以下条件: 没有总线请求; 当前指令执行结束。 (3) 响应内部中断的条件: 当前指令执行结束。 CPU接受中断请求后转入中断响应周期: (1)识别中断源,取得中断源的中断类型; (2)将标志寄存器FLAGS和CS、IP(断点)先后压入 堆栈保存; (3)清除自陷标志位TF和中断允许标志位IF; (4)获得相应的中断服务程序入口地址,转入中断服务 程序。 3.中断服务 (1)保护现场: 保护中断服务时要使用的寄存器(压栈); (2)开中断: 中断服务时能响应更高级的中断请求; (3)中断处理:执行输入输出或非常事件的处理; (4)关中断: 恢复现场时不被新的中断打扰; (5)恢复现场: 将堆栈中保存的内容弹出; (6)中断返回 :通过中断返回指令,弹出IP,CS,FLAGS, 程序回到被中断的地址,恢复中断前的状态。 6.2 8086 CPU中断系统 6.2.1 8086的中断类型 中断类型:用8位二进制表示,可以有256个不同的中断; 中断请求输入引脚:NMI、INTR; INT 0(除法溢出)→溢出中断(INTO)→INT n指令 →NMI → INTR → 单步中断。 1. 可屏蔽中断 IF= 0时,CPU不响应INTR的中断请求; IF= 1时,CPU响应INTR的中断请求。 用STI指令使IF=1,称为开中断; 用CLI指令使IF=0,称为关中断。 系统复位后,或CPU响应了任何一种中断后,都会使IF=0。 使用STI指令使IF=1,确保中断开放。 可屏蔽中断源由8259A统一管理,每片8259A可以接 受8个外部设备的中断请

文档评论(0)

jgx3536 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档