欢迎来到天天文库
浏览记录
ID:50495580
大小:1.45 MB
页数:81页
时间:2020-03-09
《微型计算机技术课件07.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第7章第7章:教学重点教学重点中断控制器8259A的作用中断控制器Intel8259A的性能概述Intel8259A内、外部结构,工作过程,工作方式等。8259A的编程、8259A的级联、8259A的应用举例第7章:7.18088中断系统8088的中断系统采用向量中断机制能够处理256个中断用中断向量号0~255区别可屏蔽中断还需要借助专用中断控制器Intel8259A实现优先权管理第7章:1.内部中断内部中断是由于8088内部执行程序出现异常引起的程序中断利用内部中断,微处理器为用户提供了发现、调试并解决程序执行时异常情况的有效途径例如,ROM-BIOS和D
2、OS系统利用内部中断为程序员提供了各种功能调用第7章:⑴除法错中断在执行除法指令时,若除数为0或商超过了寄存器所能表达的范围,则产生一个向量号为0的内部中断,称为除法错中断例如:movbl,0idivbl;除数BL=0,产生除法错中断movax,200hmovbl,1divbl;商=200H,不能用AL表达;产生除法错中断第7章:⑵指令中断在执行中断调用指令INTn时产生的一个向量号为n(0~255)的内部中断,称为指令中断其中向量号为3的指令中断比较特别(生成一个字节的指令代码:11001100),常用于程序调试,被称为断点中断例如:DEBUG.EXE调试程
3、序的运行命令G设置的断点,就是利用INT3指令实现的第7章:⑶溢出中断在执行溢出中断指令INTO时,若溢出标志OF为1,则产生一个向量号为4的内部中断,被称为溢出中断例如:movax,2000haddax,7000h;2000H+7000H=9000H,溢出:OF=1into;因为OF=1,所以产生溢出中断第7章:⑷单步中断若单步中断TF为1,则在每条指令执行结束后产生一个向量号为1的内部中断,称为单步中断例如:DEBUG.EXE调试程序的单步命令T就利用单步中断实现对程序的单步调试第7章:2.外部中断外部中断是由于8088外部提出中断请求引起的程序中断利用外
4、部中断,微机系统可以实时响应外部设备的数据传送请求,能够及时处理外部意外或紧急事件外部中断的原因是处理器外部随机产生的,所以是真正的中断(Interrupt)内部中断的原因是处理器执行程序出现异常,所以经常被称为异常(Exception)第7章:⑴非屏蔽中断通过非屏蔽中断请求信号向微处理器提出的中断请求,微处理器无法禁止,将在当前指令执行结束予以响应,这个中断被称为非屏蔽中断8088的非屏蔽中断的向量号为2,非屏蔽中断请求信号为NMI非屏蔽中断主要用于处理系统的意外或故障。例如:电源掉电前的数据保护存储器读写错误的处理第7章:⑵可屏蔽中断外部通过可屏蔽中断请求
5、信号向微处理器提出的中断,微处理器在允许可屏蔽中断的条件下,在当前指令执行结束予以响应,同时输出可屏蔽中断响应信号,这个中断就是可屏蔽中断8088的可屏蔽中断请求和响应信号分别是INTR和INTA*;由IF标志控制可屏蔽中断是否允许响应;向量号来自外部中断控制器8088通常需要配合中断控制器8259A共同处理可屏蔽中断可屏蔽中断主要用于主机与外设交换数据第7章:中断标志IF的状态IF=0:可屏蔽中断不会被响应关中断、禁止中断、中断屏蔽系统复位,使IF=0任何一个中断被响应,使IF=0执行指令CLI,使IF=0IF=1:可屏蔽中断会被响应开中断、允许中断、中断开
6、放执行指令STI,使IF=1执行指令IRET恢复原IF状态明确IF标志的状态是关键第7章:7.1.28088的中断响应过程NMIN软件中断INTRTF=1中断响应周期读中断向量号下条指令现行指令IF=1NNNNYYYYY查询中断的顺序,决定了各种中断源的优先权软件中断除法错中断指令中断溢出中断非屏蔽中断可屏蔽中断单步中断高低第7章:7.1.28088的中断响应过程(续)Y还有NMITEMP=1标志寄存器入栈TEMP=TF,IF=TF=0CS:IP入栈获取中断向量执行服务程序弹出CS:IP弹出标志寄存器返回被中断程序(1)(2)(3)(4)(5)NNY(6)第7
7、章:7.1.38088的中断向量表中断向量:中断服务程序的入口地址(首地址)逻辑地址含有段地址CS和偏移地址IP(32位)每个中断向量的低字是偏移地址、高字是段地址,需占用4个字节8088微处理器从物理地址000H开始,依次安排各个中断向量,向量号也从0开始256个中断占用1KB区域,就形成中断向量表向量号为N的中断向量的物理地址=N×4第7章:7.2内部中断服务程序编写中断服务程序与编写子程序类似利用过程定义伪指令PROC/ENDP保护现场(push)第1条指令通常为开中断指令STI处理过程主体关中断指令CLI恢复现场(pop)最后用中断返回指令IRET通常
8、采用寄存器传递参数(这些寄存器不用保护
此文档下载收益归作者所有