




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、7.48086/8088中断系统,7.4.18086/8088的中断源类型8086/8088CPU可以处理256种不同类型的中断,每一种中断都给定一个编号(0255),称为中断类型号,CPU根据中断类型号来识别不同的中断源。8086/8088的中断源如图7.17所示。从图中可以看出8086/8088的中断源可分为两大类:一类来自CPU的外部,由外设的请求引起,称为硬件中断(又称外部中断);另一类来自CPU的内部,由执行指令时引起,称为软件中断(又称内部中断)。,NMI(17号引脚),中断逻辑,非屏蔽中断请求,INT2,硬件(外部)中断,软件(内部)中断,可屏蔽中断请求,中断类型号32255,I
2、NTR(18号引脚),中断指令,INTn,N32255,溢出中断,INTO,INT4,断点,中断,INT3,单步中断,(TF1),INT1,除法,错误,INT0,图7.178086/8088中断源,1软件中断(内部中断)8086/8088的软件中断主要有三类共五种。(1)处理运算过程中某些错误的中断执行程序时,为及时处理运算中的某些错误,CPU以中断方式中止正在运行的程序,提醒程序员改错。除法错中断(中断类型号为0)。在8086/8088CPU执行除法指令(DIV/IDIV)时,若发现除数为0,或所得的商超过了CPU中有关寄存器所能表示的最大值,则立即产生一个类型号为0的内部中断,CPU转去执
3、行除法错中断处理程序。,溢出中断INTO(中断类型号为4)。CPU进行带符号数的算术运算时,若发生了溢出,则标志位OF=1,若此时执行INTO指令,会产生溢出中断,打印出一个错误信息,结束时不返回,而把控制权交给操作系统。若OF=0,则INTO不产生中断,CPU继续执行下一条指令。INTO指令通常安排在算术指令之后,以便在溢出时能及时处理。例如:ADDAX,BXINTO;测试加法的溢出,(2)为调试程序设置的中断单步中断(中断类型号为1)。当TF=1时,每执行一条指令,CPU会自动产生一个单步中断。单步中断可一条一条指令地跟踪程序流程,观察各个寄存器及存储单元内容的变化,帮助分析错误原因。单步
4、中断又称为陷阱中断,主要用于程序调试。断点中断(中断类型号为3)。调试程序时可以在一些关键性的地方设置断点,它相当于把一条INT3指令插入到程序中,CPU每执行到断点处,INT3指令便产生一个中断,使CPU转向相应的中断服务程序。,(3)中断指令INTn引起的中断(中断类型号为n)程序设计时,可以用INTn指令来产生软件中断,中断指令的操作数n给出了中断类型号,CPU执行INTn指令后,会立即产生一个类型号为n的中断,转入相应的中断处理程序来完成中断功能。,2硬件中断(外部中断)8086/8088CPU有两条外部中断请求线NMI(非屏蔽中断)和INTR(可屏蔽中断)。(1)非屏蔽中断NMI(中
5、断类型号为2)整个系统只有一个非屏蔽中断,它不受IF标志位的屏蔽。出现在NMI上的请求信号是上升沿触发的,一旦出现,CPU将予以响应。非屏蔽中断一般用于紧急故障处理。,(2)可屏蔽中断INTR(中断类型32255)可屏蔽中断请求信号从INTR引脚送往CPU,高电平有效,受IF标志位屏蔽,IF0时,对于所有从INTR引脚进入的中断请求,CPU均不予响应;另外,也可以在CPU外部的中断控制器(8259A)中以及各个I/O接口电路中对某一级中断或某个中断源单独进行屏蔽。,当外设的中断请求未被屏蔽,且IF=1,则CPU在当前指令周期的最后一个T状态去采样INTR引脚,若有效,CPU予以响应。CPU将执
6、行两个连续的中断响应周期,送出两个中断响应信号INTA。第一个响应周期,CPU将地址及数据总线置高阻;在第二个响应周期,外设向数据总线输送一个字节的中断类型号,CPU读入后,就可在中断向量表中找到该类型号的中断服务程序的入口地址,转入中断处理。,中断响应周期的时序,AD7AD0,ALE,INTA,CLK,中断类型,T1,T2,T3,T4,TI,T1,T2,T3,T4,TI,TI,空闲状态TI在8086系统中一般为三个,而在8088系统中则没有。,值得注意的是,对于非屏蔽中断和软件中断,其中断类型号由CPU内部自动提供,不需去执行中断响应周期读取中断类型号。,38086/8088中断源的优先级8
7、086/8088中断源的优先级顺序由高到低依次为:软件中断(除单步中断外)、非屏蔽中断、可屏蔽中断、单步中断。在PC机系统中,外设的中断请求通过中断控制器8259A连接到CPU的INTR引脚,外设中断源的优先级别由8259A进行管理。,7.4.2中断向量表中断向量表是存放中断向量的一个特定的内存区域。所谓中断向量,就是中断服务子程序的入口地址。对于8086/8088系统,所有中断服务子程序的入口地址都存放在中断向量表中。8086/8088可以处理256种中断,每种中断对应一个中断类型号,每个中断类型号与一个中断服务程序的入口地址相对应。,每个中断服务程序的入口地址占4个存储单元,其中低地址的两
8、个单元存放中断服务程序入口地址的偏移量(IP);高地址的两个单元存放中断服务程序入口地址的段地址(CS)。256个中断向量要占25641024个单元,即中断向量表长度为1K个单元。8086/8088系统的中断向量表位于内存的前1K字节,地址范围为00000H003FFH。8086/8088的中断向量表如图7.18所示。,00000H,00003H,00008H,0000BH,00004H,00007H,0000CH,0000FH,00010H,00013H,00014H,0007FH,00080H,003FFH,IP内容,CS内容,类型0中断入口地址,(除法出错),专用中断,(5个),用户自定
9、义中断(224个),系统保留中断(27个),类型1中断入口地址,(单步中断),类型2中断入口地址,(NMI),类型3中断入口地址,(断点中断),类型4中断入口地址,(溢出中断),类型5中断入口地址,类型31中断入口地址,类型32中断入口地址,类型255中断入口地址,0007CH,003FCH,图7.18所示的中断向量表中有5个专用中断(类型0类型4),它们已经有固定用途;27个系统保留的中断(类型531)供系统使用,不允许用户自行定义;224个用户自定义中断(类型32255),这些中断类型号可供软中断INTn或可屏蔽中断INTR使用,使用时,要由用户自行填入相应的中断服务程序入口地址。(其中有
10、些中断类型已经有了固定用途,例如,类型21H的中断已用做DOS的系统功能调用)。,由于中断服务程序入口地址在中断向量表中是按中断类型号顺序存放的,因此每个中断服务程序入口地址在中断向量表中的位置可由“中断类型号4”计算出来。CPU响应中断时,把中断类型号N乘以4,得到对应地址4N(该中断服务程序入口地址所占4个单元的第一个单元的地址),然后把由此地址开始的两个低字节单元(4N,4N+1)的内容装入IP寄存器,再把两个高字节单元(4N+2,4N+3)的内容装入CS寄存器,于是CPU转入中断类型号为N的中断服务程序。,这种采用向量中断的方法,CPU可直接通过向量表转向相应的处理程序,而不需要去逐个
11、检测和确定中断源,因而可以大大加快中断响应的速度。,FLAGS入栈,N,N,N,完成当前指令,有内部,中断吗?,从指令中或内部,获得中断类型号,从外部得到,中断类型号,TEMP=1?,令TEMPTF,调中断处理程序,Y,Y,Y,有NMI,中断吗?,有INTR,中断吗?,TF1?,执行下一条指令,N,N,N,N,Y,中断类型号2,Y,IF1?,中断类型号1,清IF、TF,CS、IP入栈,返回断点,FLAGS出栈,IP、CS出栈,中断服务,有NMI?,(1),(1),(1),(1),(2),(3),(4),(5),Y,Y,7.4.38086/8088的中断处理过程,在图示流程中,(1)(5)是CP
12、U的内部处理,由硬件自动完成。所有内部中断(除法错、INTn、INTO、单步和断点中断)以及NMI中断不需要从数据总线上读取中断类型码,而INTR中断需由CPU读取中断类型码,其中断类型码由发出INTR信号的接口电路提供。该流程图还反映出了8086/8088系统中各中断源优先级的高低。,7.4.4中断服务程序的设计中断服务程序的一般结构如图7.20所示。如前所述,若该中断处理能被更高级别的中断源中断,则需加入开中断指令。在中断服务程序的最后,一定要有中断返回指令,以保证断点的恢复。用户在设计中断服务程序时要预先确定一个中断类型号,不论是采用软件中断还是硬件中断,都只能在系统预留给用户的类型号中
13、选择。,关中断,保护现场,开中断,中断服务,恢复现场,中断返回,图7.20中断服务程序的一般结构,确定了中断类型号,还要把中断服务入口地址置入中断向量表,以保证在中断响应时CPU能自动转入与该类型号相对应的中断服务程序。将中断服务程序入口地址置入中断向量表的方法有两种:DOS系统功能调用法和直接装入法。,1DOS系统功能调用法(INT21)功能号:(AH)=25H。入口参数:(AL)=中断类型号(DS)=中断服务程序入口地址的段地址(DX)=中断服务程序入口地址的偏移地址,下面程序段完成中断类型号为60H的入口地址(DS:INT60)置入中断矢量表。PUSHDS;保护DSLEADX,INT60;取服务程序偏移地址MOVAX,SEGINT60;取服务程序段地址MOVDS,AXMOVAH,25H;送功能号MOVAL,60H;送中断类型号INT21H;DOS功能调用POPDS;恢复DS,0000H:0000H,0000H:0180H,2000H:1200H,0000H:03FFH,2000H,1200H,中断矢量表,中断服务程序,INT
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025家庭居室装修工程合同范本
- 二零二五家庭半包装修合同范例
- 保姆个人雇佣合同样本
- 每日合同民宿合作协议二零二五年
- 合资投资协议书二零二五年
- 二零二五版恋爱关系
- 低价咖啡转让合同标准文本
- 书籍设备采购合同样本
- 二零二五版退换货协议书标准模板
- 二零二五版本劳动合同范例
- 2024年广东省万阅大湾区百校联盟中考一模数学试题
- 数字贸易学 课件 马述忠 第13-22章 数字贸易综合服务概述- 数字贸易规则构建与WTO新一轮电子商务谈判
- 2024年电路保护元器件行业营销策略方案
- 下肢动静脉溃疡的护理
- 照明维护方案
- 设备管理制度的风险评估与防范方案
- 办公楼装饰工程设计及施工招标文件室内装饰
- 半导体行业对国家国防战略的支撑与应用
- 2024年十堰市中小学教师职称晋升水平能力测试题附答案
- 智能点滴自动监控方法设计
- 特殊土地基处理措施课件
评论
0/150
提交评论