中断系统
CPU暂停执行现行的程序,转而处理随机事件,处理完毕后再回到被中断的程序,这一全过程
CPU和中断源连接方式
- 一对一的连接方式
- 一对多的连接方式
一对多下的判断识别方式
- 软件查询法: 中断程序来负责查询中断接口.
- 硬件查询法(菊花链法)
-
请求线仲裁法
-
中断识别号: 每个设备都会被分配一个编号, 也称为中断向量号, 中断类型号
- 向量中断: CPU通过中断向量号, 找到中断处理程序入口地址, 转入中断处理
8086 中断类型
- 外部中断
- 可屏蔽中断 (INTR 引脚, IF):鼠标, 打印机等设备
- 不可屏蔽中断 (NMI引脚)
- 内部中断
- 溢出中断
INTO - 除法出错中断
- 断点中断 (INT3)
- 单步中断 (TF)
- INTn 中断
TF 置1
PUSHF
POP AX
OR AX, 0100H
PUSH AX
POPF
8086 中断处理
8086在当前指令执行结束之后,开始响应中断
8259A 重要组成
- 中断请求寄存器 IRR(8bit): 对应引脚,信号有效时,IRn置1
- 中断屏蔽寄存器 IMR(8bit): 哪位置1则屏蔽对应引脚的中断请求, 由 OCW1 完成
- 优先电路 PR
- 中断服务寄存器 ISR(8bit): 中断响应之后,第一个中断回答INTA# 周期将允许中断请求的中断响应位置置1, 存放的是正在被服务的中断,包括尚未服务完成 而中途被优先级更高的中断打断的中断
8059A 工作方式
- 引入中断请求的方式
- 边沿触发方式
- 电平触发方式
- 屏蔽中断源方式
- 通常屏蔽方式 OCW1
- 特殊屏蔽方式 允许优先级比当前低的中断被响应, OCW3 的D6D5=11
- 优先级排队方式
- 固定优先级
- 优先级轮转法
- 优先级自动轮转 高IR0,IR2,...IR7 低, 响应之后自动降到最低
- 优先级指令轮转 指定一个为最高优先级再按顺序自动轮换