[工学]第08章 8086、微机原理课件中断.ppt

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

8.1 中断的基本概念 中断(Interrupt):CPU暂停执行现行程序,转去执行一段特殊程序,以便处理随机到来的事件,处理完毕再返回继续执行被暂停的程序的过程 中断服务程序(ISR, Interrupt-Service Routine):处理随机事件的特殊程序,又称为中断处理程序(Interrupt Handler) 中断源:引起CPU中断的随机事件, 或能发出中断请求的其它来源,称为中断源。 8.1.1 中断技术的优点 中断技术的优点如下: (1)实现并行及分时操作。 (2)实现实时处理。 (3)故障处理。 (4)基本功能调用。 中断的作用 中断已成为计算机必备的机制 实现CPU与外设并行工作,从而提高CPU的工作效率 实现对突发事件快速的实时处理 实现应用程序与操作系统的联系 实现多道程序分时运行 … … 中断系统应具有的功能 (1)实现中断及返回 (2)能实现优先权排队 (3)高级中断源能中断低级的中断处理 (1)软件判优 中断响应时,CPU进入特定的ISR 在ISR中,将中断请求信号通过数据线读入CPU 依次测试数据位,若为1,则有中断请求,作相应处理。 软件查询法特点 中断优先级由查询顺序确定,先被查询者具有高优先级。 需要中断请求信号的的锁存接口。 可以通过修改软件改变中断优先级。 响应速度慢,服务效率低。 1、硬件中断(外部中断) 非屏蔽中断(NMI) 通过NMI引脚输入8086CPU,用于处理一些紧急情况,如系统掉电。采用边沿触发方式,高电平有效。2号中断。不受IF影响。 可屏蔽中断(INTR) 通过INTR引脚输入8086CPU,采用电平触发方式,高电平有效。只有IF=1时CPU才响应此中断。通常用于一般外部设备的中断。 8.4.3 中断向量和中断向量表 基本概念 中断向量: ISR的首地址(入口地址) 中断向量表:所有中断源的中断向量顺序存储在存储器的连续区域所形成的表 中断向量码(号):中断源识别码 基本思想 以中断向量码为索引,查中断向量表,取得中断向量 8086在取得了类型码后的处理过程是一样的,其顺序为: (1)将类型码乘4,作为中断向量表的指针; (2)把CPU的标志寄存器入栈,保护各个标志位,此操作类似于PUSHF指令; (3)复制追踪标志TF的状态,接着清除IF和TF标志,屏蔽新的INTR中断和单步中断; (4)保存主程序中的断点,即把主程序断点处的IP和CS值推入堆栈保护,先推入CS值,再推入IP值; (5)从中断向量表中取中断服务程序的入口地址,分别送至CS和IP中,先取CS值; (6)按新地址执行中断服务程序。 在中断服务程序中,通常要保护CPU内部寄存器的值(保护现场),开中断(若允许中断嵌套)。在中断服务程序执行完后,要恢复现状,最后执行中断返回指令IRET,IRET指令按次序恢复断点处的IP和CS值,恢复标志寄存器(相当于POP F)。于是程序就恢复到断点处继续执行。 8.4.4 中断向量的设置 将类型号为N的中断服务程序的入口地址置入中断类型号N所对应的中断向量表中。 用指令设置 (较少使用) DOS功能调用来设置(建议使用) 用指令设置 用指令设置中断服务程序的入口地址到中断类型号n所对应的中断向量表中: MOV AX,0 ;主程序中设置 MOV ES,AX MOV DI,N*4 ;中断类型号*4 MOV AX,OFFSET INTRAD ;送中断子程序的偏移地址到AX CLD STOSW ;偏移地址送到[4n],[4n+1]单元 MOV AX,CS STOSW ;段地址送到[4n+2],[4n+3]单元 STI ;开中断 … INTRAD:PUSH AX ;中断服务子程序 STI … DOS功能调用来设置 设置中断向量:把由AL中指定中断类型号的中断向量DS:DX,放置在中断向量表中。 预设 AL=中断类型号 DS:DX=中断服务程序入口 AH=25H 执行:INT 21H DOS功能调用来取中断向量 取中断向量:把由AL中指定的中断类型号的中断向量,从中断向量表中取到ES:BX中。 预设 AL=中断类型号 AH=35H 执行:INT 21H 返回:ES:BX=中断服务程序入口 利用DOS功能调用设置中断向量和取中断向量 MOV AL,N ;取原中断向量 MOV AH,35H INT 21H PUSH ES ;存原中断向量 PUSH BX PUSH DS MOV AX,SEG INTRAD ;设置中断向量段地址在DS MOV DS,AX MOV DX,OFFSET INTRAD MOV A

文档评论(0)

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

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

1亿VIP精品文档

相关文档