- 1、本文档共82页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中断源识别 软件查询法 中断矢量法。由中断源提供中断类型号,CPU根据类型确定中断源 中断判优——要解决的问题 对同时产生的中断: 首先处理优先级别较高的中断;若优先级别相同,则按先来先服务的原则 对非同时产生的中断: 低优先级的中断程序允许被高优先级的中断源所中断 中断嵌套 中断判优——控制方法 软件判优 顺序查询中断请求,先查询的先服务 (即先查询的优先级别高) 硬件判优 链式判优、并行判优(中断向量法) 菊花链逻辑电路 INTAin IREQ INTR =1 ≥1 INTAout DB 三态门 中 断 向 量 码 E 外设接口 中断确认 菊花链 逻辑电路 中断响应 向中断源发出INTA中断响应信号; 保护断点。包括FLAGS、 CS和IP 获得中断服务程序入口地址 固定入口法 中断向量法 中断处理 中断服务子程序的特点: 为“远过程” 用IRET指令返回 中断服务子程序完成的工作 保护现场 开中断(STI) 中断处理 关中断(CLI) 恢复现场 中断返回 中断返回 执行IRET指令,使IP、CS和FLAGS从堆栈弹出 三、8088/8086中断系统 内部中断 外部中断 除法错中断 溢出中断 单步中断 软件中断 非屏蔽中断 可屏蔽中断 256个中断源 NMI INTR 中断逻辑 软件中断指令 溢出中断 除法错 单步中断 非屏蔽中断请求 中断控 制器 8259A PIC 8086/8088CPU内部逻辑 断点中断 可 屏 蔽 中 断 请 求 n 4 3 0 1 2 8086/8088中断源类型: 中断向量表 ┇ ┇ 00000H 003FFH 1KB 中断向量表 存放各类中断的中断服务程序的入口地址 每个入口占用4 B,低字为段内偏移,高字为段基址 表的地址位于内存的00000H~003FFH,大小为1KB,共256个入口 中断向量表的初始化 将用户自定义的中断服务程序入口地址放入向量表 例:将中断向量码为48H的服务程序入口地址放入向量表 p290 中断向量表的初始化 MOV AX,0000H MOV DS,AX MOV SI,0120H MOV BX,OFFSET INT1 MOV [SI],BX MOV BX,SEG INT1 MOV [SI+2],BX 8088内部中断响应过程 特点: 无INTA周期 中断类型码固定或由指令给出 8088内部中断响应过程 响应过程步骤: ① PUSH FLAG ② LET TEMP = TF ③ CLEAR IF,TF ④ PUSH CS ⑤ PUSH IP ⑥(I P)=(TYPE*4+1):(TYPE*4+0) ⑦(CS)=(TYPE*4+3):(TYPE*4+2) 8088外部中断响应过程 可屏蔽中断: ① 第1个INTA,PIC进行优先级排队判优处理 ②第1个INTA ,PIC把中断类型码放到DB上,由CPU读入 ③ PUSH FLAG ④ LET TEMP = TF ⑤ CLEAR IF,TF ⑥ PUSH CS ⑦ PUSH IP ⑧(I P)=(TYPE*4+1):(TYPE*4+0) ⑨(CS)=(TYPE*4+3):(TYPE*4+2) NMI中断响应过程与内部中断类似 时序:p273 8088/8086中断系统的优先级 优先级从高到低的顺序为: 内部中断 NMI中断 INTR中断 单步中断 中断响应和处理流程p274 中断处理过程 当NMI、INTR、单步和除法错中断同时产生时,响应顺序为: 响应除法错中断 响应NMI中断 响应INTR中断 响应单步中断 级别高的中断可以中断级别低的中断服务程序 6.5 中断控制器8259 了解: 8259的主要引线及结构 掌握: 8259的各种工作方式 8259的初始化编程 中断程序设计的一般过程和方法 * 锁存器芯片74LS374 D0~D7 Q0 Q7 . . . OE CP 译码器 D0~D7 Q0 Q7 . . . OE CP 译码器 做输出口: 做输入口: 外设 自外设 I/O接口综合应用例 根据开关状态在7段数码管上显示数字或符号 设输出接口的地址为F0H 设输入接口地址为F1H 当开关的状态分别为0000~1111时,在7段数码管上对应显示’0’~’F’ 符号 形状 7段码 .gfedcba 符号 形状 7段码 .gfedcba ’0’’8’’1’’9’ 01100111
文档评论(0)