- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
3-1中断及中断处理过程外部中断1硬件中断具有随机性分为可屏蔽中断与不可屏蔽中断两种2中断分类3外中断源中断源分类I/O设备数据通道实时钟故障源4内部中断源CPU执行指令产生的异常执行INT软件中断指令5内部中断软件中断没有随机性,类似于普通子程序的调用63-1中断及中断处理过程3.1.2中断处理过程中断请求—→中断优先级判定—→中断响应—→中断处理—→中断返回1、中断请求2、中断优先级判定多中断请求的优先级判定实现多层中断嵌套①信号形式应满足CPU要求。②中断请求信号应被有效地记录,以便CPU能够检测到它。③一旦CPU对某中断源的请求提供了服务,则该中断源的请求信号应及时撤消。3.1.2中断处理过程3、中断响应?获得中断类型号保护状态标志屏蔽新的INTR中断和单步中断保存断点信息?根据中断类型,获得中断服务程序的入口地址?进入中断服务程序CPU状态字中IF=1,开中断;IF=0,关中断CPU复位,IF=0,TF=0;用STI开中断,CLI关中断CPU响应中断后,自动实现关中断,若要实现中断嵌套,在中断服务程序中要用STI开中断图1微机系统中实现中断的基本模型图2有中断产生的情况下CPU运行程序的轨迹1?保护现场开中断中断服务?关中断?恢复现场4、中断处理2中断处理程序中,最后应有IRET指令恢复断点信息恢复标志寄存器FR4、中断返回3.1.2中断处理过程3.2中断优先权软件查询。硬件链式优先级排队电路。硬件优先级编码比较电路。利用可编程中断控制器。3.2.1软件查询3.2.2硬件排优2可编程中断控制器中断优先权管理电路中断请求锁存器中断类型寄存器中断屏蔽寄存器当前中断服务寄存器3.380X86中断系统3.3.1中断结构8086(88)中断系统可以容纳最多256个中断源,所有中断源统一编码,每个中断源用一个字节型编码标识,它是CPU识别中断源的标记。256个中断源分为两大类:(1)内部中断由CPU内部事件及执行软中断指令产生。已定义的内部中断有:①除法错中断,0型中断。②单步中断,1型中断③断点中断,3型中断,用于调试插入断点。④溢出中断,4型中断,INTO指令。⑤指令中断,INTn指令①中断在处理过程中,CPU自动将标志FR入栈,然后清TF和IF②IF的值可以通过指令STI和指令CLI改变③没有直接改变TF值的指令,需要编程PUSHFPOPAXORAX,0100HPUSHAXPOPFOFDFIFTFSFZFAFPFCFFR:注意:(2)外部中断3.3.1中断结构由外部中断源产生对CPU的请求而引发的。8086(88)中断系统将外部中断源又分为两种。①非屏蔽中断。②可屏蔽中断2型中断。当NMI引脚出现上升沿触发,表示有非屏蔽中断请求信号的有效高电平应持续2个时钟周期以上用来处理系统突发事件当INTR引脚出现高电平,表示有可屏蔽中断请求只有在IF=1时,CPU才响应此中断CPU响应后,会执行两个响应周期,分别送两个INTA负脉冲信号,以获得该中断源的中断类型码中断向量:中断服务程序的入口地址。8086(88)在内存的最低1K字节建了一个中断向量表,用以存放256个中断类型的中断向量(中断服务程序的地址)存放方法:每个中断向量占4个字节,前2个字节是IP,后两个字节是CS。按中断向量码的序号排列.3.3.2中断向量表如:中断类型码为20H的中断向量,存放在0000:0080H开始的四个单元中。中断向量地址指针=图7中断向量表中断向量地址指针4×中断类型码1、绝对地址置入2、使用串指令置入3.3.3中断向量表的建立中断服务程序的入口地址该怎么置入中断向量表中?INT-TBLSEGMENTAT0ORGn×4DDINT-VCEINT-TBLENDSINT-VCEPROCFARIRET……CLIMOVAX,0MOVES,0;置向量表段地址MOVDI,n*4
文档评论(0)