微机原理与接口技术课件 7.中断向量表(已看)

合集下载

《微机原理与应用教学资料》第七章 中断(课件)

《微机原理与应用教学资料》第七章 中断(课件)
高不睬低,停低转高 中断嵌套 5、中断屏蔽
中断源 硬件屏蔽 CPU的IF
CPU
ppt课件
7
二、中断分类
1、内部中断(软件中断)
⑴中断指令 INT n
n—中断类型码 n=0~255
⑵由CPU的运算错误引起的:
a.除法错中断: INT 0 (除数为零或商超过范围,自动产生中断)
b.溢出中断: INT 4 (当OF=1,且在程序中有INTO指令,产生中断)
b.中断请求
显然,中断请求的方法较合理
中断定义:当有外部数据输入或内部异常时,发送请求给 CPU,CPU暂时停止正在运行的程序,处理中断结束后, 返回继续运行先前的程序。
两个最重要的特点:可返回性,现场保护
ppt课件断点保护
2
一、中断概念
1、中断源:引起程序中断的事件,内部中断、外部中断
2、中断响应:对外部中断而言,INTA对INTR的响应
ppt课件
00103H 13H 5
★各个外设的中断服务子程序的入口地址集中在一个表
(中断向量表)中,CPU响应中断时,根据中断源提供 的中断类型号 i, →i×4→在中断向量表查找对应的中断 服务子程序 i 的入口地址,内容装入CS、IP,转而执行 中断服务子程序 i
ppt课件
6
4、中断优先级: ①当同时有多个中断请求,先响应优先级高的 ②当一个中断服务程序正在执行时,又一个中断源申请中断:
ppt课件
9
2、外部中断(硬件中断) ⑴不可屏蔽中断NMI
a. 上升沿触发 b. CPU必须予以响应,不能用IF屏蔽 c. INT 2,中断类型码为2,
中断向量固定存放于00008H~ 0000BH中 d. 用于发生重大故障时申请中断

十二五教材讲稿微机原理与接口技术第7章中断系统

十二五教材讲稿微机原理与接口技术第7章中断系统

2. 陷井(Traps)是在引起异常的指令执行之后才被报告
的一种异常,且服务程序完成后,返回到原程序引起异 常指令的下一条指令处继续向下执行。
★陷井与中断处理方法一样,但与失效不同
3. 夭折(Abort)是一种不能确定引起异常指令确切位置
的异常(有时称为中止或失败)。
7
2020年4月12日星期日
返回

控制器
IRQ0 IRQ1 IRQ2
: IRQ15
9
2020年4月12日星期日
返回
外部中断
1. 不可屏蔽中断(NMI):
含义:不能用软件来控制是否允许中断的一种外部中断。 常见NMI中断有: (1)电源掉电 (2)存储器检验出错 (3)总线奇偶错等。
2. 可屏蔽中断(INTR):
含义:可用软件控制是否允许中断的外部中断。即STI使IF=1,允许 中断;CLI使IF=0,禁止中断。
第7章 微型计算机的中断系统
【本章提要】
首先介绍中断与异常的基本概念,然后讨论实地址和保护地址方 式下的中断,进而详细介绍8259中断控制器及其编程应用,最后介绍 中断调用及中断程序设计的一般方法。
【学习目标】
熟悉中断与异常的概念 熟练掌握实地址方式和保护方式下的中断服务程序入口地址的求法 理解可屏蔽中断的中断响应过程 掌握可编程控制器8259A工作原理 理解8259A的工作方式,并熟练掌握8259A的编程方法及应用 了解常用中断调用方法,掌握中断程序设计方法
13
2020年4月12日星期日
返回
中断服务(处理)
1.保护现场
保护现场实质:将重要信息压入堆栈。
2.开中断
目的:开放所有可屏蔽中断,以允许高级中断嵌套。

微机原理与接口技术:中断向量和中断向量表1

微机原理与接口技术:中断向量和中断向量表1
10
从类型32开始直到255作为用户中断类型,用户中断向量由用户填写 到中断向量表中,中断服务程序也由用户编写。
11
5
8086/8088CPU的中断系统可以处理256种中断。每种中断都有对应 的中断服务程序。中断服务程序的入口地址称为中断向量。256种中断 向量存储在内存中构成一张表,称为中断向量表。 每个中断向量都包括两部分:段基址和偏移地址。因此,存放1个中断 向量需要4个内存单元,256种中断向量共需要1K个内存单元。
6
中断向量在中断向量表中的存放 首地址称为向量地址,其值为: 中断类型码×4。 如DOS系统功能调用的中断类型号 为21H,向量地址为:n×4=84H。
7
当CPU调用中断类型码为n的中断服务程序时,首先把n乘以4,得到 它的向量地址4n,然后把4n+1:4n两个单元的内容取出并装入IP寄存 器;再把(4n+3:4n+2)两个单元的内容取出并装入CS寄存器, CPU就获得了n的中断服务程序的入口地址,进而转去执行中断服务程 序。
知识点 6.5
8086/8088中断系统
1
2

知识点 6.5.1
中断向量和中断向量表
3
6.5.1 中断向量和中断向量表
8086/8088CPU的中断系统可以处理256种中断。每种中断都有对应 的中断服务程序。中断服务程序的入口地址称为中断向量。256种中断 向量存储在内存中构成一张表,称为中断向量表。 每个中断向量都包括两部分:段基址和偏移地址。因此,存放1个中断 向量需要4个内存单元,256种中断向量共需要1K个内存单元。
4
中断向量表位于内存起始地址00000~003FFH的存储区
内。从地址00000H开始,每4个单元存放一个中断向量,

微机原理与接口技术课程案例-7.中断向量表(已看)

微机原理与接口技术课程案例-7.中断向量表(已看)
第七讲 中断技术
1
中断之概念
“中断”意思为打断操作的顺序。CPU正在执行程 序,有个“中断”打断了指令的正常执行顺序,使得 CPU中止正在执行的程序转而去执行被称为中断服务程 序(ISR)的其它程序。
2
中断之目的
计算机系统中引入中断的目的主要有两个: 数据的传送; 异常的处理;
3
中断之种类
中断类型码固定(0、1、3、4)或由指令给出(n)
响应过程主要步骤:
① PUSH FLAGS ② IF=TF=0(关可屏蔽中断和单步中断) ③ PUSH CS ④ PUSH IP ⑤ 取中断向量送入IP’和CS’
PUSH CS/IP/FLAGS JMP CS’:IP’
18
中断响应过程(续)
外部中断响应过程
NMI DB
n
INTR
INTA
中断控 制器 8259A PIC
非屏蔽中断请求
可 屏 蔽
中 断 请 求
中断请求\排队\屏蔽
11
中断源的识别
8088/8086系统采用中断类型码n来识别不同的中断 源。每个中断源都有一个与它相对应的中断类型码n 。 溢出、断点、除法溢出、单步、非屏蔽中断的类型 码为固定值(4、3、0、1、2) 软件中断的类型码由指令INT n 给出(n) 可屏蔽中断的类型码由PIC(8259)给出(n)
8
与(外部)中断有关的引脚
与中断有关的控制线为:NMI和INTR、INTA NMI:上升沿出发。 INTR:高电平出发。 INTA:可屏蔽中断的响应信号。
9
中断过程
五个步骤:
中断请求
中断判优/排队
(有时还要进行中断源
识别)
请求
中断响应

中断向量表

中断向量表
西华大学电气信息学院 郑海春
3. 中断是开放的
在CPU内部有一个中断允许触发器(也即IF)。只有 当其为“1”时,CPU才能响应中断;若其为“0”,即 使INTR线上有中断请求,CPU也不响应。而这个触发 器的状态可由STI和CLI指令来改变。当CPU复位时, 中断允许触发器为“ 0”,即关中断,所以必须要用 STI 指令来开中断。当中断响应后,CPU 就自动关中 断,所以必须在中断服务程序中用STI指令来开中断。
西华大学电气信息学院 郑海春
中断向量表
西华大学电气信息学院 郑海春
• 中断向量:指示中断服务程序的入口地址,包括: 偏移地址IP 、段地址CS。
• 每个中断向量的低字是偏移地址、高字是段地址, 需占用4个字节(低对低,高对高)。
• 8086 微处理器从物理地址00000H开始到003FFH (1KB),依次安排各个中断向量,向量号从0到 255。 • 中断向量表: 256个中断向量所占用的1KB区域。 • 中断向量的存放首址=N×4
西华大学电气信息学院 郑海春
2.实现优先权排队
在系统中通常有多个中断源,会出现两个或更 多个中断源同时提出中断请求的情况,这样就 必须要设计者事先根据轻重缓急,给每个中断 源确定一个中断级别——优先权。当多个中断 源同时发出中断申请时,CPU能找到优先权级 别最高的中断源,响应它的中断请求;在优先 权级别最高的中断源处理完了以后,再响应级 别较低的中断源。
7.1.3 中断系统的功能
1.实现中断及返回 当某一中断源发出中断申请时,若允许响应这个中断 请求,CPU必须在现行的指令执行完后,把断点处的IP 和CS值(即下一条应执行的指令的地址)、各个寄存 器的内容和标志位的状态推入堆栈保留下来——称为 保护断点和现场。然后转到需要处理的中断源的服务 程序的入口,同时清除中断请求触发器。当中断处理 完后,再恢复被保留下来的各个寄存器和标志位的状 态(称为恢复现场),恢复IP和CS值(称为恢复断 点),CPU返回断点,继续执行主程序。

微机原理与接口技术课件 7.中断向量表(已看)

微机原理与接口技术课件 7.中断向量表(已看)

8259A的工作过程

8259A对中断请求的处理过程如下:

当某IRi有效时,IRR相应位置1 若有效的IRi未被屏蔽,则向CPU发出中断请求INT 检测到第1个INTA信号后,置ISRi=1,IRRi=0 检测到第2个INTA信号后,把ISRi=1中最高优先级 的中断类型码 n 放到DB上
19
可编程中断控制器8259A

PIC,Programmable Interrupt



可对8个中断源实现优先级控制 (单个管8个) 可扩展至对64个中断源实现优 先级控制(9个管64个) 可编程设置不同工作方式(多套 管理方案) 根据中断源向x86提供不同中断 类型码n(来访者1人1号) 引脚分配及功能见右图
的中断;

内部中断:由处理器电路或中断指令产生的中断,
如除0中断,int指令等。
4
8086的中断向量表




存放各类中断的中断服务程序的入口地址CS:IP(段 CS和偏移IP)——中断向量 表的地址位于内存的00000H~003FFH,大小为 1KB,共256个中断向量(中断向量表) 每个中断向量占用4 Bytes,低字为段内偏移IP,高 字为段基址CS 根据中断类型号n获得中断服务程序入口的方法: 中 断向量在IVT中的存放地址=4×n (中断向量地址)
中断指令 INT n
(n=0~255)
软件 硬件
外部/硬件中断请求
2
NMI
非屏蔽中断请求
可 屏 蔽
中 断 请 求
11
DB
3 中断逻辑
n 中断控 制器 8259A PIC
0
1
单步中断
内部排队 中断开关

中断向量表详解

中断向量表详解

8.4 BIOS中断调用8.4.1 BIOS中断调用概述BIOS (BasicInput/OutputSystem)是IBM-PC机的监控程序,它固化在微型机主板的ROM中,其内容主要有系统测试程序 (Post)、初始化引导程序(Boot)、I/O设备的基本驱动程序和许多常用程序模块,它们一般以中断服务程序的形式存在。

例如,负责显示输出的显示 I/O程序为10H号中断服务程序;负责打印输出的打印I/O程序为17H中断服务程序等。

图8.5 是用户程序和操作系统关系示意图,由图可见BIOS程序直接建立在硬件基础上,磁盘操作系统(DOS)和其他操作系统建立在BIOS基础上,各种高级语言 则建立在操作系统基础上。

用户程序可以使用高级语言,也可以调用DOS 或其他操作系统,还可以调用BIOS,甚至直接指挥硬件设备。

通常应用程序调用DOS提供的系统功能,完成输入/输出或其他操作,这样做用户可以少考虑硬件,实现起来容易。

图8.5 用户程序和操作系统关系示意图应用程序直接对硬件编程的优点是程序的效率高,缺点是需要程序员对硬件性能有较深的了解。

总的来说,编程复杂,所以一般不直接对硬件编程。

BIOS中断程序处于DOS功能调用和硬件环境之间。

和DOS功能调用相比其优点是效率高,缺点是编程相对复杂;和直接对硬件编程相比,优点是实现相对容易,缺点是效率相对低。

在下列情况下可考虑使用BIOS中断:(1)有些功能DOS没有提供,但BIOS提供了;(2)有些场合无法使用DOS功能调用;(3)其他原因。

8.4.2BIOS中断调用方法BIOS的调用实际上是利用每一台计算机中BIOS固有的I/O操作程序来方便地解决自己的问题,由于这些已经在计算机中了,故使用时不必要再把它写入自己的程序,只要指明它的操作位置就可以了。

1.BIOS调用的基本操作由于BIOS中的每一种功能调用往往包含不同的几个操作细节,因此调用时需要说明三部分,基本步骤为:(1)设置分功能号。

微机原理课件-第7章中断系统

微机原理课件-第7章中断系统
异常具有软件中断的特征,不产生中断响应总线周期。异 常处理程序不需发中断结束命令EOI。
7.1.4 中断优先级与中断嵌套
微机系统中常见的中断其中断优先级由高向低分别是:
内部中断和异常 软件中断 外部非屏蔽中断 外部可屏蔽中断
中断的排队方式主要有:
1. 按优先级排队 ——根据任务的轻重缓急; 2. 循环轮流排队——CPU轮流响应各个中断源的中断请求。
9
7.1 中断概述
7.1.4 中断优先级与中断嵌套 当CPU正在响应某一中断源的请求,执行为其服务的中
例:假如原中断服务程序的中断号为N,新中断程序的入口地 址的段基址为SEG_INTRnew,偏移地址为OFFSET_INTRnew ,中断向量修改程序:
DATA OLD_SEG OLD_OFF
DATA
SEGMENT DW ? DW ? … ENDS ….
24
7.1 中断概述
…. MOV AH, 35H MOV AL, N INT 21H MOV OLD_SEG, ES MOV OLD_OFF, BX MOV AL, N MOV AH, 25H MOV DX, SEG_INTRnew MOV DS, DX MOV DX, OFFSET_INTRnew INT 21H
32位微机原理与接口技术
Theory and Interface Technology of 32-bit Microcomputer
主编 副主编
何苏勤 郭青 马静 冯晓东 韩阳 金翠云
西安电子科技大学出版社 2017年9月
1
第7章 中断系统
2
第7章 中断系统
本章主要阐述中断的基本概念、中断的功能、中断 的分类、中断的响应过程,概括了实模式与保护模式 中断技术的区别与联系以及中断与异常的区别与联系; 并以可编程中断控制器8259A为例,介绍了中断控制器 8259A的组成结构、寄存器模型、级联方式、中断应用 程序的编写方法以及微机系统中断的实现过程。

中断向量表详解

中断向量表详解

8.4 BIOS中断调用8.4.1 BIOS中断调用概述BIOS (BasicInput/OutputSystem)是IBM-PC机的监控程序,它固化在微型机主板的ROM中,其内容主要有系统测试程序 (Post)、初始化引导程序(Boot)、I/O设备的基本驱动程序和许多常用程序模块,它们一般以中断服务程序的形式存在。

例如,负责显示输出的显示 I/O程序为10H号中断服务程序;负责打印输出的打印I/O程序为17H中断服务程序等。

图8.5 是用户程序和操作系统关系示意图,由图可见BIOS程序直接建立在硬件基础上,磁盘操作系统(DOS)和其他操作系统建立在BIOS基础上,各种高级语言 则建立在操作系统基础上。

用户程序可以使用高级语言,也可以调用DOS 或其他操作系统,还可以调用BIOS,甚至直接指挥硬件设备。

通常应用程序调用DOS提供的系统功能,完成输入/输出或其他操作,这样做用户可以少考虑硬件,实现起来容易。

图8.5 用户程序和操作系统关系示意图应用程序直接对硬件编程的优点是程序的效率高,缺点是需要程序员对硬件性能有较深的了解。

总的来说,编程复杂,所以一般不直接对硬件编程。

BIOS中断程序处于DOS功能调用和硬件环境之间。

和DOS功能调用相比其优点是效率高,缺点是编程相对复杂;和直接对硬件编程相比,优点是实现相对容易,缺点是效率相对低。

在下列情况下可考虑使用BIOS中断:(1)有些功能DOS没有提供,但BIOS提供了;(2)有些场合无法使用DOS功能调用;(3)其他原因。

8.4.2BIOS中断调用方法BIOS的调用实际上是利用每一台计算机中BIOS固有的I/O操作程序来方便地解决自己的问题,由于这些已经在计算机中了,故使用时不必要再把它写入自己的程序,只要指明它的操作位置就可以了。

1.BIOS调用的基本操作由于BIOS中的每一种功能调用往往包含不同的几个操作细节,因此调用时需要说明三部分,基本步骤为:(1)设置分功能号。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中断优先级控制方式 :固定优先级和循环优 先级 固定优先级方式

所有中断请求IRi的中断优先级固定不变 优先级排列顺序可编程改变 加电后8259A的默认方式,默认优先级顺序从 高到低为IR0~IR7
优先级可编程改变 IR7 IR级
中断指令 INT n
(n=0~255)
软件 硬件
外部/硬件中断请求
2
NMI
非屏蔽中断请求
可 屏 蔽
中 断 请 求
11
DB
3 中断逻辑
n 中断控 制器 8259A PIC
0
1
单步中断
内部排队 中断开关
INTR
INTA
8086/8088 CPU内部逻辑
中断请求\排队\屏蔽
中断源的识别


8088/8086系统采用中断类型码n来识别不同的中断 源。每个中断源都有一个与它相对应的中断类型码n 。 溢出、断点、除法溢出、单步、非屏蔽中断的类型 码为固定值(4、3、0、1、2) 软件中断的类型码由指令INT n 给出(n) 可屏蔽中断的类型码由PIC(8259)给出(n) CPU响应INTR中断时,会产生两个中断响应总线周 期INTA,要求PIC在第2个中断响应总线周期把中断 类型码 n 放到数据总线上,供CPU读入。
ISR 内容
IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0 0 2 1 1 0 0 0 7 0 6 0 5 0 4 0 3
IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0 ISRi 0 7 1 6 0 5 1 4 0 3 0 2 0 1 0 0
最低级
IR4的服务结束以前
溢出中断:类型号4,这是一个软件中断,即INTO指令。
若算术指令的执行结果发生举出(OF=1),则执行指 令后立即产生一个中断类型码为4的中断。
用于程序调试,在断点中断服务程序中,可显示有关寄存器、存储 单元等内容,以便程序员分析到断点为止程序是否正确。
软件中断:即INT n指令,类型号n(0-255)。
29

自动EOI方式:在第2个INTA结束时,由8259A使 ISRi自动复位;

因不保留当前正在服务的中断的状态,故AEOI不能用于 中断嵌套方式

特殊EOI方式:由CPU发出一条SEOI命令,该EOI 命令中指出了所要复位的ISR的位号。

用于特殊屏蔽方式

正常EOI方式:由CPU发出正常EOI命令,该EOI命 令使ISRi=1的位中优先级最高的那一位复位。
5

初始化——将中断服务 程序的入口地址放入向 量表 例:中断类型码n为48H 的中断处理子程序的名 字为int48h.
高 8位
低 8位
6
内部中断的种类
目的操作数所能表达的范围时产生。
除法溢出:类型号0,执行除法指令时,若发现除数为0或商大于
单步中断:类型号1,TF=1时产生(当前指令需执行完)。 断点中断:类型号3,这是一个软件中断,即INT 3指令。一般

若工作在AEOI方式,在第2个INTA结束时,使ISRi 复位;否则由CPU发出EOI命令使ISRi复位 24
8259A的工作方式

8259A的工作方式有如下几类: 中断优先方式与中断嵌套 中断结束处理方式 屏蔽中断源的方式 中断触发方式 级联工作方式
25
中断优先方式与中断嵌套
8259A (从片2)
CAS0 CAS1 CAS2
8259A (主片)
SP/EN IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0
SP/EN IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0
SP/EN IR7 IR6 IR5 IR4 IR3 IR2 IR1 IR0
VCC
主片:SP/EN接+5V;从片:SP/EN接地。
31
中断触发方式



边沿触发 IRi出现上升沿表示有中断请求 电平触发 IRi出现高电平表示有中断请求 应注意及时撤除高电平,否则可能引起重复 响应 在第1个INTA结束前,IRi必须保持高电平
32
级联工作方式



单片8259A可支持8个中断源; 采用多片8259A级连,可最多支持64个中断源。n 片8259A可支持7n+1个中断源; 级连时只能有一片8259A为主片,其余的均为从属 片;(一主多从) 涉及到的8259A引脚包括: CAS0-CAS2 SP/EN IRi INT

用于普通全嵌套方式
30
屏蔽中断源的方式

普通屏蔽方式:IMR屏蔽字决定了允许或禁止某 位IRi所对应的中断:IMi=1 禁止, IMi=0 允许。 特殊屏蔽方式: 提供了允许较低优先级的中断能够得到响应的 特殊手段。 原理:假定当前正在处理IR6,先进入特殊屏 蔽方式,然后设置IM6=1。这时,除IR6外的 所有中断请求均能得到响应。 特殊屏蔽方式中只能用SEOI命令结束中断。
第七讲 中断技术
1
中断之概念
“中断”意思为打断操作的顺序。CPU正在执行程
序,有个“中断”打断了指令的正常执行顺序,使得
CPU中止正在执行的程序转而去执行被称为中断服务程 序(ISR)的其它程序。
2
中断之目的
计算机系统中引入中断的目的主要有两个:


数据的传送;
异常的处理;
3
中断之种类

外部中断:来自处理器外部的中断,如键盘引起
最高级
最高级
最低级
27
IR4的服务结束以后
中断优先方式与中断嵌套(续)

中断嵌套方式 在中断处理过程中允许被更高优先级的事件所中断称 为中断嵌套。8259A有两种中断嵌套方式: 普通全嵌套方式(默认方式)
一中断正被处理时,只有更高优先级的事件可以打断当 前的中断处理过程而被服务。

特殊全嵌套方式
一中断正被处理时,允许同级或更高优先级的事件可以 打断当前的中断处理过程而被服务。 注: 特殊全嵌套仅用于多个8259A级连时的主8259A, 而不能用于从属8259A或单8259A系统。
28
中断结束处理方式


当某一IRi中断被服务时,ISR中的相应位 ISRi=1。当服务结束后,则必须清零该ISRi位。 使ISRi=0是通过向8259A发出中断结束命令 (EOI命令)实现的。 三种EOI命令 自动EOI(AEOI) ——(自动EOI方式) 非指定EOI(NSEOI)——(正常EOI方式) 指定EOI(SEOI) ——(特殊EOI方式)
7
外部中断的种类
非屏蔽中断:类型号2,不可用软件屏蔽,CPU
必须响应它。 可屏蔽中断:类型号n由PIC(8259)提供,IF=1 时CPU才能响应。
8
与(外部)中断有关的引脚
与中断有关的控制线为:NMI和INTR、INTA NMI:上升沿出发。 INTR:高电平出发。 INTA:可屏蔽中断的响应信号。
的中断;

内部中断:由处理器电路或中断指令产生的中断,
如除0中断,int指令等。
4
8086的中断向量表




存放各类中断的中断服务程序的入口地址CS:IP(段 CS和偏移IP)——中断向量 表的地址位于内存的00000H~003FFH,大小为 1KB,共256个中断向量(中断向量表) 每个中断向量占用4 Bytes,低字为段内偏移IP,高 字为段基址CS 根据中断类型号n获得中断服务程序入口的方法: 中 断向量在IVT中的存放地址=4×n (中断向量地址)
8259A的工作过程

8259A对中断请求的处理过程如下:

当某IRi有效时,IRR相应位置1 若有效的IRi未被屏蔽,则向CPU发出中断请求INT 检测到第1个INTA信号后,置ISRi=1,IRRi=0 检测到第2个INTA信号后,把ISRi=1中最高优先级 的中断类型码 n 放到DB上


中断优先级控制要处理两种情况: 对同时产生的中断:应首先处理优先级别较高的中断; 若优先级别相同,则按先来先服务的原则FIFO处理; 对非同时产生的中断:低优先级别的中断处理程序允 许被高优先级别的中断源所中断——即允许中断嵌套。 通常将中断判优与中断源识别合并在一起进行处理。 x86系统中,这项任务由PIC(8259)和 CPU(8086/8088)共同完成。
PUSH CS/IP/FLAGS
JMP CS’:IP’
18
中断响应过程(续)

外部中断响应过程
非屏蔽中断NMI,中断类型码为固定(2) 与内部中断响应过程类似 可屏蔽中断INTR

① INTA(1)PIC进行优先级排队判优处理 ② INTA(2)PIC把中断类型码n放到DB上,CPU读入 ③ PUSH FLAG ④ IF=TF=0(关可屏蔽中断和单步中断) 与内部中断一样 ⑤ PUSH CS ⑥ PUSH IP ⑦ 取中断向量送入IP’和CS’
33
最多1主8从
级连电路连接方法 系统总线 AB、DB、CB
64个中断源
INTA A0 CS D0-D7 RD WR INT
INTA A0 CS D0-D7 RD WR INT
INTA A0 CS D0-D7 RD WR INT CAS0 CAS1 CAS2
8259A (从片1)
CAS0 CAS1 CAS2
8086/8088 CPU的中断响应过 程

内部中断响应过程 :
无INTA周期 中断类型码固定(0、1、3、4)或由指令给出(n) 响应过程主要步骤:

① PUSH FLAGS ② IF=TF=0(关可屏蔽中断和单步中断) ③ PUSH CS ④ PUSH IP ⑤ 取中断向量送入IP’和CS’
相关文档
最新文档