《微机原理A》 第十七讲:中断系统 主讲老师:王克义
《微机原理A》 第十七讲:中断系统 主讲老师:王克义
本讲主要内容 中断及中断处理的基本概念 80X86实模式中断系统
本讲主要内容 • 中断及中断处理的基本概念 • 80x86实模式中断系统
公 171基本概念 中断的定义 在程序运行时,系统外部、内部或现行程序本身 若出现紧急事件,处理器必须立即强行中止现行 程序的运行,改变机器的工作状态并启动相应的 程序来处理这些事件,然后再恢复原来的程序运 行,这一过程称为中断
17.1 基本概念 1. 中断的定义 • 在程序运行时,系统外部、内部或现行程序本身 若出现紧急事件,处理器必须立即强行中止现行 程序的运行,改变机器的工作状态并启动相应的 程序来处理这些事件,然后再恢复原来的程序运 行,这一过程称为中断
公 2.中断响应和处理过程 ·CPU在执行每条指令的适当时刻,检测中断请求 信号 若发现中断请求信号有效,对于可屏蔽中断还必 须CPU开放中断,则在下一机器周期进入中断响 应周期。 进入中断响应周期后,中断响应和处理过程如下: (1)关中断 CPU在响应中断时,发出中断响应信号NTA,同时内 部自动地关中断,以禁止接受其他的中断请求。 (2)保存断点 把断点处的指令指针P值和CS值压入堆栈,以使中断 处理完后能正确地返回主程序断点
• CPU在执行每条指令的适当时刻,检测中断请求 信号。 • 若发现中断请求信号有效,对于可屏蔽中断还必 须CPU开放中断,则在下一机器周期进入中断响 应周期。 • 进入中断响应周期后,中断响应和处理过程如下: (1) 关中断 CPU在响应中断时,发出中断响应信号INTA,同时内 部自动地关中断,以禁止接受其他的中断请求。 (2) 保存断点 把断点处的指令指针IP值和CS值压入堆栈,以使中断 处理完后能正确地返回主程序断点。 2. 中断响应和处理过程
公 (3)识别中断源 ■CPU要对中断请求进行处理,必须找到相应的中断服务 程序的入口地址,这就是中断的识别 (4)保护现场 ■为了不使中断服务程序的运行影响主程序的状态,必 须把断点处有关寄存器(指在中断服务程序中要使用的 寄存器)的内容以及标志寄存器的状态压入堆栈保护 (5)执行中断服务程序 ■在执行中断服务程序中,可在适当时刻重新开放中 断,以便允许响应较高优先级的中断 (6)恢复现场并返回 ■即把中断服务程序执行前压入堆栈的现场信息弹回原 寄存器,然后执行中断返回指令,从而返回主程序继 续运彳
(3)识别中断源 CPU要对中断请求进行处理,必须找到相应的中断服务 程序的入口地址,这就是中断的识别。 (4) 保护现场 为了不使中断服务程序的运行影响主程序的状态,必 须把断点处有关寄存器(指在中断服务程序中要使用的 寄存器)的内容以及标志寄存器的状态压入堆栈保护。 (5)执行中断服务程序 在执行中断服务程序中,可在适当时刻重新开放中 断,以便允许响应较高优先级的中断。 (6) 恢复现场并返回 即把中断服务程序执行前压入堆栈的现场信息弹回原 寄存器,然后执行中断返回指令,从而返回主程序继 续运行