第七章中断
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
NMI、 2、软件中断(包括自动产生中断)
CPU内部
NMI CPU内的中断逻辑
软件中断 INT n INTO
自动产生的中断 除法错
单步(TF=1)
INTR 8259A
IRQ0 系统定时器 IRQ1 键盘 IRQ2 彩色/图形接口 IRQ3 保留(串口) IRQ4 串口 IRQ5 保留(LPT)
IRQ6 软盘
每个中断服务程序末尾必须有IRET指令以示 结束,从而返回被中断的程序地址处
中断屏蔽:在中某断些系情统况下相,关CP概U念可能不对中断请
求信号作出响应或处理,这就是中断屏蔽。
屏蔽情况
➢ 中断屏蔽标志IF
➢ 接口电路中的中断屏蔽寄存器
➢ 系统在处理优先级别较高的中断请求时,不会 理睬后来的级别较低的中断请求 。
不存在同时调用多个子程序的情况,因此 子程序不需要进行优先级排队;而不同中 断源则可能同时向CPU提出服务请求,因 此需要中断仲裁及优先级排队。
中断系统的功能
一、实现中断及返回
中断源发出中断请求,CPU决定是否响应,若响 应,则保护断点和现场,转入相应中断服务程序, 中断服务结束后,恢复现场和断点,继续执行原 程序。
类型 中断源
码
码
00H 被0除 0FH 并口1(打印机) 1EH 磁盘参数
中断
01H 单步中断 10H 显示器驱动程序 1FH 图形字符集
02H NMI
11H 设备检测
20H 程序结束
03H 断点中断 12H 存储器检测
21H DOS系统
调用
IBM-PC/XT中断类型号的功能分配
类型码
中断源
类型码
中断源
类型码
中断源
04H 溢出中断 05H 屏幕打印中断
06H (保留)
07H (保留)
13H 软盘驱动程序
22H 结束地址
14H 通信驱动程序
23H Ctrl-Break夭折键
处理
15H 盒式磁带机驱动程 24H 关键性错误处理
序
16H 硬盘驱动程序
25H 磁盘顺序读
08H 定时电路中断
17H 打印机驱动程序 26H 磁盘顺序写
09H 键盘中断
18H BASIC程序
27H 程序结束且驻留内
存
0AH 保留的硬件(级联)中 19H 引导(BOOT)程 28H DOS内部使用
断
序
0BH 异步串口2中断
7.1中断概述
中断,是指CPU在执行正常程序时,为处理一些 紧急发生的情况,暂时中止当前程序,转而对该 紧急事件进行处理,并在处理完后返回正常程序 的过程
CPU执行流程
非预料事件1
中断服务程序1
非预料事件 2
中断服务程序 2
非预料事件
◆非预料事件是指事件发生的时间无法预知,即中断源何时产生中断不确定,是随 机的。
外部中断 (硬件中断)
可屏蔽中断 (INTR) 不可屏蔽中断 (NMI)
内部中断
(软件中断) (执行指令所引起的)
中断系统相关概念
中断向量:中断向量即中断服务子程序的入口地 址,也就是中断服务子程序的第一条指令的地址 在存储器中的存放位置
中断向量表:中断向量构成的表格,位于存储器 的最低地址单元
◆中断源产生中断的随机性,使中断服务程序的执行也具有随机性,即何时执行中 断服务程序不是在程序中安排好的。
中断系统
中断系统是微机中实现中断功能的各种软、 硬件的总称
中断系统一般包括CPU内部相应的中断逻辑、 接口中的中断控制电路及各类中断服务子程 序
中断系统相关概念wk.baidu.com
中断源:引起中断的原因,或能够发出中断请求信 号的外设 中断类型号:处理器对各类中断的中断源进行的统 一编号N,N的取值范围是0~255
IRQ7 LPT
中断源的优先级顺序为:被0除中断→软件中断→INTO → NMI → INTR →单步中 断。
中断类型码
一、中断类型码:8086可以处理256个中断请求。每 个中断请求均对应于唯一固定的类型码。被0除 类型码是0,单步为1; NMI为2;断点中断为3, 溢出中断为4
类型 中断源 类型码 中断源
CPU执行流程
非预料事件1
中断服务程序1
中断系统的功能
二、能实现优先权排队
按各中断请求的重要程度排列CPU响应的 次序称为中断优先级。
即同时有多个中断请求到来时,CPU会首 先响应和处理优先级别最高的中断请求。
中断优先级的实现可以用软件或硬件设置
7.2 8086的中断系统
8086的中断源(8086微型机有两类中断): 1、可屏蔽硬件中断INTR、不可屏蔽硬件中断
中断嵌套过程示意图
CPU执行流程
非预料事件1
中断服务程序1
中断服务程序2
非预料事件2
中断嵌套必须具备的几个条件
正处于响应状态的中断服务程序中,应开放 总中断(IF位置1)
新中断应具有比原中断有高的优先级;同级 或低级均不能嵌套
为保护各级中断服务程序的数据不被破坏, 所有服务程序中均应有保护现场、恢复现场 的指令
中断处理过程
中断检测
✓ CPU内部硬件自动完成
中断响应
✓ CPU内部硬件自动完成
中断服务
✓ 中断服务是根据用户自行编制的指令顺序完 成各项操作的。
程序中断与子程序调用的区别
子程序的执行是程序员事先安排好的(由 调用子程序的指令转入);中断服务子程 序的执行一般由随机的中断事件引发。
子程序的执行受到主程序或上层子程序的 控制;中断服务子程序一般与被中断的现 行程序无关。
、、 、、 、、 、、
、、
PUSH AX
、、
、、
IRET
CPU在执行此指令时, 某中断源发申请中断; CPU在执行完该指令后, 转去执行中断子程
地址1000:150H为断点
中断系统相关概念
中断现场:是指CPU转去执行中断服务程序前的运行 状态,包括CPU内部各寄存器、断点地址等。
中断嵌套:当CPU正在进行某一级别中断源的中断 处理时,若有更高级别的新中断源发出请求,且新中 断源满足响应条件,则CPU应中止当前的中断服务程 序,保护此程序的断点和现场,转而响应高级中断。 这种多级(重)中断的处理方式称为“嵌套”。
中断优先级:在系统中多个中断源可能同时提出
中断请求时,需要按中断的轻重缓急给每个中断 源指定一个优先级别
中断系统相关概念
断点:是指CPU执行的现行程序被中断时的 下一条指令的地址,又称断点地址
、、
、、
断点概念
、、 、、
、、
MOV AX, 0
ADD AX, DX
1000:150H
MOV [ DI ], AX
CPU内部
NMI CPU内的中断逻辑
软件中断 INT n INTO
自动产生的中断 除法错
单步(TF=1)
INTR 8259A
IRQ0 系统定时器 IRQ1 键盘 IRQ2 彩色/图形接口 IRQ3 保留(串口) IRQ4 串口 IRQ5 保留(LPT)
IRQ6 软盘
每个中断服务程序末尾必须有IRET指令以示 结束,从而返回被中断的程序地址处
中断屏蔽:在中某断些系情统况下相,关CP概U念可能不对中断请
求信号作出响应或处理,这就是中断屏蔽。
屏蔽情况
➢ 中断屏蔽标志IF
➢ 接口电路中的中断屏蔽寄存器
➢ 系统在处理优先级别较高的中断请求时,不会 理睬后来的级别较低的中断请求 。
不存在同时调用多个子程序的情况,因此 子程序不需要进行优先级排队;而不同中 断源则可能同时向CPU提出服务请求,因 此需要中断仲裁及优先级排队。
中断系统的功能
一、实现中断及返回
中断源发出中断请求,CPU决定是否响应,若响 应,则保护断点和现场,转入相应中断服务程序, 中断服务结束后,恢复现场和断点,继续执行原 程序。
类型 中断源
码
码
00H 被0除 0FH 并口1(打印机) 1EH 磁盘参数
中断
01H 单步中断 10H 显示器驱动程序 1FH 图形字符集
02H NMI
11H 设备检测
20H 程序结束
03H 断点中断 12H 存储器检测
21H DOS系统
调用
IBM-PC/XT中断类型号的功能分配
类型码
中断源
类型码
中断源
类型码
中断源
04H 溢出中断 05H 屏幕打印中断
06H (保留)
07H (保留)
13H 软盘驱动程序
22H 结束地址
14H 通信驱动程序
23H Ctrl-Break夭折键
处理
15H 盒式磁带机驱动程 24H 关键性错误处理
序
16H 硬盘驱动程序
25H 磁盘顺序读
08H 定时电路中断
17H 打印机驱动程序 26H 磁盘顺序写
09H 键盘中断
18H BASIC程序
27H 程序结束且驻留内
存
0AH 保留的硬件(级联)中 19H 引导(BOOT)程 28H DOS内部使用
断
序
0BH 异步串口2中断
7.1中断概述
中断,是指CPU在执行正常程序时,为处理一些 紧急发生的情况,暂时中止当前程序,转而对该 紧急事件进行处理,并在处理完后返回正常程序 的过程
CPU执行流程
非预料事件1
中断服务程序1
非预料事件 2
中断服务程序 2
非预料事件
◆非预料事件是指事件发生的时间无法预知,即中断源何时产生中断不确定,是随 机的。
外部中断 (硬件中断)
可屏蔽中断 (INTR) 不可屏蔽中断 (NMI)
内部中断
(软件中断) (执行指令所引起的)
中断系统相关概念
中断向量:中断向量即中断服务子程序的入口地 址,也就是中断服务子程序的第一条指令的地址 在存储器中的存放位置
中断向量表:中断向量构成的表格,位于存储器 的最低地址单元
◆中断源产生中断的随机性,使中断服务程序的执行也具有随机性,即何时执行中 断服务程序不是在程序中安排好的。
中断系统
中断系统是微机中实现中断功能的各种软、 硬件的总称
中断系统一般包括CPU内部相应的中断逻辑、 接口中的中断控制电路及各类中断服务子程 序
中断系统相关概念wk.baidu.com
中断源:引起中断的原因,或能够发出中断请求信 号的外设 中断类型号:处理器对各类中断的中断源进行的统 一编号N,N的取值范围是0~255
IRQ7 LPT
中断源的优先级顺序为:被0除中断→软件中断→INTO → NMI → INTR →单步中 断。
中断类型码
一、中断类型码:8086可以处理256个中断请求。每 个中断请求均对应于唯一固定的类型码。被0除 类型码是0,单步为1; NMI为2;断点中断为3, 溢出中断为4
类型 中断源 类型码 中断源
CPU执行流程
非预料事件1
中断服务程序1
中断系统的功能
二、能实现优先权排队
按各中断请求的重要程度排列CPU响应的 次序称为中断优先级。
即同时有多个中断请求到来时,CPU会首 先响应和处理优先级别最高的中断请求。
中断优先级的实现可以用软件或硬件设置
7.2 8086的中断系统
8086的中断源(8086微型机有两类中断): 1、可屏蔽硬件中断INTR、不可屏蔽硬件中断
中断嵌套过程示意图
CPU执行流程
非预料事件1
中断服务程序1
中断服务程序2
非预料事件2
中断嵌套必须具备的几个条件
正处于响应状态的中断服务程序中,应开放 总中断(IF位置1)
新中断应具有比原中断有高的优先级;同级 或低级均不能嵌套
为保护各级中断服务程序的数据不被破坏, 所有服务程序中均应有保护现场、恢复现场 的指令
中断处理过程
中断检测
✓ CPU内部硬件自动完成
中断响应
✓ CPU内部硬件自动完成
中断服务
✓ 中断服务是根据用户自行编制的指令顺序完 成各项操作的。
程序中断与子程序调用的区别
子程序的执行是程序员事先安排好的(由 调用子程序的指令转入);中断服务子程 序的执行一般由随机的中断事件引发。
子程序的执行受到主程序或上层子程序的 控制;中断服务子程序一般与被中断的现 行程序无关。
、、 、、 、、 、、
、、
PUSH AX
、、
、、
IRET
CPU在执行此指令时, 某中断源发申请中断; CPU在执行完该指令后, 转去执行中断子程
地址1000:150H为断点
中断系统相关概念
中断现场:是指CPU转去执行中断服务程序前的运行 状态,包括CPU内部各寄存器、断点地址等。
中断嵌套:当CPU正在进行某一级别中断源的中断 处理时,若有更高级别的新中断源发出请求,且新中 断源满足响应条件,则CPU应中止当前的中断服务程 序,保护此程序的断点和现场,转而响应高级中断。 这种多级(重)中断的处理方式称为“嵌套”。
中断优先级:在系统中多个中断源可能同时提出
中断请求时,需要按中断的轻重缓急给每个中断 源指定一个优先级别
中断系统相关概念
断点:是指CPU执行的现行程序被中断时的 下一条指令的地址,又称断点地址
、、
、、
断点概念
、、 、、
、、
MOV AX, 0
ADD AX, DX
1000:150H
MOV [ DI ], AX