第7章 中断系统与中断控制器8259A.ppt
文本预览下载声明
第7章 中断系统和中断控制器8259A;7.1.1 中断及中断源;(3)中断系统 ;7.1.2 中断处理过程; 中断响应是指CPU在接到中断请求信号后,确定可以响应时自动完成的操作:
①发中断响应信号 ,同时内部关中断(IF←0),以禁止其它可屏蔽中断请求;
?? ② 保护断点——程序断点处的CS、IP内容压栈,以便中断处理完后能正确地返回主程序;
③?保护现场—— 保护标志寄存器 F 的内容;
④ 中断识别并形成中断服务程序入口地址——使段地址→CS ,偏移地址→IP,转入中断服务程序执行。;(3)中断服务及中断返回
;中断服务程序框图:;7.1.3 中断优先权管理;A0~A15;作用:
(1)能够送出当前有中断请求的中断源中优先权最高的中断请求。
(2)当一个中断源的中断请求被CPU响应后,比它低优先权的中断源被屏蔽。;7.2 8086/8088的中断系统; 2. 溢出中断
格式: INTO 单字节指令, (n=4)
指令功能:放在算术运算指令之后,若运算结果有溢出,则OF=1,产生溢出中断,若运算结果无溢出,则OF=0,不产生溢出中断。 ;7.2.2 8086/8088的中断分类;7.2.2.1 内部中断
内部中断是通过软件指令或软件陷阱而调用的非屏蔽中断(指不受IF状态影响),这是由程序运行的状态和指令代码执行后自动启动而不是由外界中断请求来调用的。
内部中断按其性质又可分为软件陷阱和软件中断:
软件陷阱——在某些指令执行期间FR的标志位满足设定的条件或CPU的状态符合某种情况从而触发CPU内部逻辑去启动所需要的中断服务子程序,如除法出错中断和单步中断。
软件中断——通过指令来调用中断服务子程序。 ; 1. 除法出错中断——中断类型码n= 0
在执行除法指令时,若除数为0或商超过了寄存器所能表达的范围,则产生一个类型号为0的内部中断,称为除法错中断。
注意点:除法错误中断是由内部电路自动生成的,没有对应的中断指令。 ; 4. 溢出中断——中断类型码 n=4
溢出中断是通过INTO中断指令实现的,该指令跟在有符号数的算术运算指令以后在执行溢出中断指令INTO时,若溢出标志OF为1,则产生一个向量号为4的内部中断。并转入溢出中断处理。
例:MOV BL,126
MOV AL,5
ADD AL,BL →执行到此指令后,将OF置1
INTO →执行到此产生中断 ;7.2.2.2 外部中断
外部中断是由于外部提出中断请求引起的程序中断,也称为硬中断。
利用外部中断,微机系统可以实时响应外部设备的数据传送请求,能够及时处理外部意外或紧急事件。
外部中断的原因是处理器外部随机产生的,所以是真正的中断(Interrupt)。
硬中断又分可屏蔽中断与非屏蔽中断。;2、可屏蔽中断;7.2.3 中断向量表; 每一个中断服务程序入口地址与表内的中断向量有一一对应的关系;例:某一中断源的中断类型码为45H,则该中断源的中断向量在中断向量表的位置是:45H×4=00114H;2、中断向量表的设置;方法二、用传送指令设置;7.2.4 中断处理过程;2、中断处理顺序;8086/8088的中断处理过程;3、中断响应过程;7.3 中断控制器8259A;7.3.2 8259的结构及引脚;2、引脚信号;7.3.3 8259的工作过程;7.3.4 8259的工作方式;7.3.5 8259的命令字和操作命令字;初始化命令字ICW的格式及功能如下 ;D7;4、ICW4 ——方式控制初始化命令字;设8259的端口地址为20H,21H,分析下列初始化结果。
MOV AL, 13H
OUT 20H,AL
MOV AL,08H
OUT 21H,AL
MOV AL,0DH
OUT 21H,AL; 2. 操作命令字;2、OCW2是用来设置中断优先级循环方式和发送EOI命令。通过偶地址写OCW2且命令字的D4D3位都是“0”,标志着是对OCW2设置。
; 3、OCW3用于控制读中断状态、查询及屏蔽方式,此时要求8259A的引脚A0为0即偶地址。 D4D3位是01标志着是对OCW3设置。;8259A的应用编程一般包括三个部分:
1)初始化——写入命令字
初始化命令字ICW1~4 ,在PC机系统中
显示全部