一章中断技术

上传人:夏** 文档编号:586639391 上传时间:2024-09-05 格式:PPT 页数:32 大小:360.02KB
返回 下载 相关 举报
一章中断技术_第1页
第1页 / 共32页
一章中断技术_第2页
第2页 / 共32页
一章中断技术_第3页
第3页 / 共32页
一章中断技术_第4页
第4页 / 共32页
一章中断技术_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《一章中断技术》由会员分享,可在线阅读,更多相关《一章中断技术(32页珍藏版)》请在金锄头文库上搜索。

1、中断技术第第6章章6.1 中断概述 p中断,是中断,是CPU在执行当前程序的过程中,由于某在执行当前程序的过程中,由于某种随机出现的外围设备的请求,使得种随机出现的外围设备的请求,使得CPU暂时停暂时停止正在执行的程序,转去执行为外围设备服务的止正在执行的程序,转去执行为外围设备服务的程序,当为外围设备服务的程序执行完后,程序,当为外围设备服务的程序执行完后,CPU再返回到原暂时停止的程序处(即断点)继续执再返回到原暂时停止的程序处(即断点)继续执行的这一过程。行的这一过程。o中断示意图中断示意图n 中断的基本概念中断的基本概念 o凡凡是是能能发发出出中中断断请请求求的的外外部部设设备备及及内

2、内部部原原因因(包包括括软软件中断和异常故障)被称为件中断和异常故障)被称为中断源中断源。常见的中断源有:。常见的中断源有:n外外设设中中断断:系系统统外外设设要要求求与与CPU交交换换信信息息而而产产生生的的中中断断。如如打打印印机、磁盘等。机、磁盘等。n指指令令中中断断:为为方方便便用用户户使使用用系系统统资资源源或或调调试试程程序序而而设设置置的的中中断断指指令。令。n程程序序中中断断:程程序序在在运运行行过过程程中中出出现现的的多多种种错错误误而而产产生生的的中中断断。如如溢出中断、非法除数中断、地址越界中断、非法操作码中断等。溢出中断、非法除数中断、地址越界中断、非法操作码中断等。n

3、故故障障中中断断:机机器器在在运运行行过过程程中中,硬硬件件出出现现错错误误而而引引起起的的中中断断。如如校验错、电源故障等。校验错、电源故障等。 6.1 中断概述 n 中断中断源源 oCPU响应中断的条件:响应中断的条件:n设置中断请求触发器设置中断请求触发器(发出中断发出中断)n设置中断屏蔽触发器设置中断屏蔽触发器(屏蔽中断屏蔽中断)n设置中断允许触发器设置中断允许触发器(允许中断允许中断) nCPU在现行指令结束后在现行指令结束后响应中断响应中断 具有中断屏蔽具有中断屏蔽功能功能的接口电路示例的接口电路示例 6.1 中断概述 n 中断中断响应与中断处理响应与中断处理 o中断响应与中断处理

4、过程:中断响应与中断处理过程:n关中断关中断 n保护断点保护断点n识别中断源识别中断源n保护现场保护现场n中断服务中断服务n恢复现场恢复现场 n开中断与返回开中断与返回 6.1 中断概述 n 中断中断响应与中断处理响应与中断处理 o中断优先级(中断优先级(Priority),又称优先权,即在多个中),又称优先权,即在多个中断源同时请求中断时,确定服务的次序。解决中断断源同时请求中断时,确定服务的次序。解决中断的优先级的方法常有以下几种:的优先级的方法常有以下几种:n软件查询确定中断优先级(软件查询确定中断优先级(原理图原理图) n硬件查询确定优先级(硬件查询确定优先级(链式优先级排队原理图链式

5、优先级排队原理图) n中断优先级编码电路(中断优先级编码电路(由编码器和比较器构成的由编码器和比较器构成的优先级排队电路原理图优先级排队电路原理图)6.1 中断概述 n 中断中断优先级与中断嵌套优先级与中断嵌套 o中中断断嵌嵌套套,或或称称多多重重中中断断,即即当当CPU执执行行优优先先级级较较低低的的中中断断服服务务程程序序时时,允允许许响响应应比比它它优优先先级级高高的的中中断源请求中断,而挂起正在处理的中断。断源请求中断,而挂起正在处理的中断。 o多个中断源、单一中断请求线的多重中断流程多个中断源、单一中断请求线的多重中断流程 6.1 中断概述 n 中断中断优先级与中断嵌套优先级与中断嵌

6、套 o可屏蔽中断可屏蔽中断INTR 8086/8088的中断时序的中断时序o不不可可屏屏蔽蔽中中断断NMI(中中断断类类型型码码固固定定为为2),用用于于通通知知CPU发发生生了了“灾灾难难性性”的的事事件件,如如电电源源掉掉电电、存存储储器器读读写写错错误误、总总线线奇奇偶偶位位出出错错等等 。软软件件中断(内部)中断(内部)硬件中断硬件中断(外部)(外部)INT n 指令指令中中 断断 逻逻 辑辑断点断点中断中断溢出溢出中断中断单步单步中断中断除数为除数为0 中断中断(3)(4)(1)(0)非屏蔽中断请求非屏蔽中断请求(2)中中断断控控制制器器8259A可可屏屏蔽蔽中中断断请请求求NMII

7、NTRINTOINT3OF=1TF=16.2 8086的中断系统 n 外部中断外部中断 o溢出中断(溢出中断(4号中断号中断)o除法出错中断(除法出错中断(0号中断号中断)oINT n指令中断指令中断o断点中断(断点中断(3号中断号中断)o单步(陷阱)中断(单步(陷阱)中断(1号号中断中断)6.2 8086的中断系统 n 内部中断内部中断 软软件件中断(内部)中断(内部)硬件中断硬件中断(外部)(外部)INT n 指令指令中中 断断 逻逻 辑辑断点断点中断中断溢出溢出中断中断单步单步中断中断除数为除数为0 中断中断(3)(4)(1)(0)非屏蔽中断请求非屏蔽中断请求(2)中中断断控控制制器器8

8、259A可可屏屏蔽蔽中中断断请请求求NMIINTRINTOINT3OF=1TF=1o中中断断向向量量:是是中中断断服服务务程程序序的的入入口口地地址址,包包括括中中断断服服务务程程序序的段基址的段基址CS和偏移地址和偏移地址IP(共占(共占4个字节)。个字节)。 o中中断断向向量量表表:是是存存放放中中断断向向量量的的表表格格,它它存存放放在在存存储储器器的的最最低端,共低端,共1KB,存放,存放256个中断向量。个中断向量。o向向量量地地址址:是是在在中中断断向向量量表表中中,每每个个中中断断向向量量在在存存储储空空间间上上的最低地址的最低地址,是将中断类型码乘是将中断类型码乘4以获取。以获

9、取。o8086/8088的中断向量表结构的中断向量表结构6.2 8086的中断系统 n 中断向量与中断向量表中断向量与中断向量表 o(1)保保护护断断点点。即即把把当当前前标标志志寄寄存存器器PSW、代代码码段段寄寄存存器器CS和指令指针寄存器和指令指针寄存器IP的内容压入堆栈:的内容压入堆栈: (SP)(SP)- 2 (SP)+1,(SP)(PSW) (SP)(SP)- 2 (SP)+1,(SP)(CS) (SP)(SP)- 2 (SP)+1,(SP)(IP)6.2 8086的中断系统 n 中断控制转入操作中断控制转入操作 o(2)清清除除IF和和TF,即即IF0,TF0,以以便便禁禁止止其

10、其它它可可屏屏蔽蔽中断和单步中断中断和单步中断o(3)获获取取中中断断向向量量。将将中中断断类类型型码码乘乘以以4获获得得向向量量地地址址,根根据据向向量量地地址址查查找找中中断断向向量量表表后后,将将对对应应的的中中断断向向量量放放入入CS和和IP,从而,从而将将控制转入中断控制转入中断服务程序服务程序: (IP)0000H:4N (CS)0000H:4N26.2 8086的中断系统 n 中断控制转入操作中断控制转入操作 o在中断在中断服务服务程序执行完后,最后要执行一条中断返回指令程序执行完后,最后要执行一条中断返回指令IRET,将原压入堆栈的标志和断点重又弹回原处:,将原压入堆栈的标志和

11、断点重又弹回原处: (IP)(SP)+1,(SP) (SP)(SP)+ 2 (CS)(SP)+1,(SP) (SP)(SP)+ 2 (PSW)(SP)+1,(SP) (SP)(SP)+ 26.2 8086的中断系统 n 中断返回操作中断返回操作 【例例】某某外外设设中中断断类类型型号号为为13H,它它的的中中断断服服务务程程序序的的入入口口地地址址为为0070H:0FC9H,求求其其向向量量地地址址并并具具体体描描述述中中断断向向量量的各字节在存储器中的存储情况。的各字节在存储器中的存储情况。【解解】由由13H4=4CH,可可得得中中断断类类型型号号为为13H的的向向量量地地址址为为0000H

12、:004CH,该该中中断断向向量量在在向向量量表表中中的的具具体体存存储储情情况况如下:如下: (0000H:004CH)=C9H (0000H:004DH)=0FH (0000H:004EH)=70H (0000H:004FH)=00H6.2 8086的中断系统 INTER1PROC FAR PUSHAX;保护现场;保护现场PUSHBX ;中断服务程序;中断服务程序STI;开中断,以便允许多重中断;开中断,以便允许多重中断;继续执行中断服务程序;继续执行中断服务程序(发中断结束命令)(发中断结束命令);中断控制器;中断控制器8259A所要求的所要求的POPBX;恢复现场;恢复现场POPAXI

13、RET;中断返回;中断返回INTER1ENDP6.2 8086的中断系统 n 中断服务程序格式中断服务程序格式 o中断向量并非常驻内存,而是开机上电时,由程序装入内中断向量并非常驻内存,而是开机上电时,由程序装入内存指定的中断向量表中。系统配置和使用的中断所对应的存指定的中断向量表中。系统配置和使用的中断所对应的中断向量由系统软件负责装入,而用户编写的中断,其中中断向量由系统软件负责装入,而用户编写的中断,其中断向量则要由用户自行装入。断向量则要由用户自行装入。o【例例】某外设的中断服务程序某外设的中断服务程序为为INTER1,其中断类型号,其中断类型号为为N,试编写一程序将该外设的中断向量装

14、入到中断向量,试编写一程序将该外设的中断向量装入到中断向量表中。(表中。(程序示例程序示例)6.2 8086的中断系统 n 中断向量的装入中断向量的装入 thanks!6.1,6.2,6.5,6.9,6.10 课后课后作业作业Type 225CSIP:CSType 32IPCSType 31IP:CSType 5IPCSType 4IPCSType 3IPIPIPIPCSCSCSType 8Type 1Type 0:224保保留留27个个用用户户定定义义个个8086 专专 用用 5 个个03FFH03FCH0083H0080H007FH007CH0014H0013H0010H000FH000C

15、H000FH0008H0007H0004H0003H0000H溢出中断溢出中断断点中断断点中断非屏蔽中断非屏蔽中断单步中断单步中断除数为除数为 0方法一:方法一:MOVAX,0;中断向量表的段基址;中断向量表的段基址MOVES,AXMOVDI,N*4;向量地址送;向量地址送DI ;中断向量装入中断向量表中;中断向量装入中断向量表中MOVAX,OFFSET INTER1CLDSTOSWMOVAX,SEG INTER1STOSW某外设的中断服务程序某外设的中断服务程序为为INTER1,其中断类型号为,其中断类型号为N,试编写一程序将该外设的中断向量装入到中断向量表中。试编写一程序将该外设的中断向量装入到中断向量表中。方法二:方法二:MOVAX,0;中断向量表的段基址;中断向量表的段基址MOVES,AXMOVBX,N*4;向量地址送;向量地址送BX ;中断向量装入中断向量表中;中断向量装入中断向量表中MOVAX,OFFSET INTER1MOVES:BX,AXMOVAX,SEG INTER1MOVES:BX+2,AX某外设的中断服务程序某外设的中断服务程序为为INTER1,其中断类型号为,其中断类型号为N,试编写一程序将该外设的中断向量装入到中断向量表中。试编写一程序将该外设的中断向量装入到中断向量表中。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

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