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

中断向量表中断向量表是DSP程序的重要组成部分,当有中断发生并且处于允许状态时,程序指针跳转到中断向量表中对应的中断地址。
由于中断服务程序一般较长,通常中断向量表存放的是一个跳转指令,指向实际的中断服务程序。
下面是5402中断向量表的一个范例,可以作为模板,使用时稍作修改就行:******************************************************************5402V ectors.asm*完整的5402中断向量表示例*5402共有30个中断向量,每个向量占4个字的空间。
*使用向量一般用一条跳转指令转到相应中断服务子程序,其余空位用NOP填充*未使用的向量直接用RETE返回,是为了防止意外进入未用中断。
***************************************************************** .sect ".vectors" ;开始命名段.vecotrs.global CodeStart ;引用程序入口的全局符号定义…;引用其它中断程序入口的全局符号定义.align 0x80 ;中断向量表必须对齐128字的页边界RESET: B CodeStart; Reset中断向量,跳转到程序入口NOP ;用NOP填充表中其余空字NOP ;B指令占了两个字,所以要填两个NOPNMI: RETE ;不可屏蔽中断NOPNOPNOP; 软件中断SINT17 .space 4*16 ;软件中断使用较少,简单起见用0填充SINT18 .space 4*16SINT19 .space 4*16SINT20 .space 4*16SINT21 .space 4*16SINT22 .space 4*16SINT23 .space 4*16SINT24 .space 4*16SINT25 .space 4*16SINT26 .space 4*16SINT27 .space 4*16SINT28 .space 4*16SINT29 .space 4*16SINT30 .space 4*16INT0: RETE ;外部中断INT0NOPNOPNOPINT1: RETE ;外部中断INT1NOPNOPNOPINT2: RETE ;外部中断INT2NOPNOPNOPTINT: RETE ;Timer0中断NOPNOPNOPBRINT0: RETE ;McBSP #0 接收中断NOPNOPNOPBXINT0: RETE ;McBSP #0 发送中断NOPNOPNOPDMAC0: RETE ;无定义(默认)DMA0中断NOPNOPNOPTINT1: RETE ;Timer1中断(默认)或DMA1中断. NOPNOPNOPINT3: RETE ;外部中断3NOPNOPNOPHPINT: RETE ;HPI中断NOPNOPNOPBRINT1: RETE ;McBSP #1接收中断(默认)或DMA2中断NOPNOPNOPBXINT1: RETE ;McBSP #1发送中断(默认)或DMA3中断NOPNOPNOPDMAC4: RETE ;DMA4中断NOPNOPNOPDMAC5: RETE ;DMA5中断NOPNOPNOP.end在本实验中只要把在开头加上中断子程序标号的引用,并在中断表的TINT部分换成跳转指令就行了:*vectors.asm for 方波发生.sect ".vectors" ;开始命名段.vecotrs.global CodeStart ;引用程序入口的全局符号定义.global TINT0_ISR ;引用Timer0中断子程序<节省篇幅,中间省略>TINT: B TINT0_ISR ;Timer0中断NOPNOPBRINT0: RETE ;McBSP #0 receive interrupt<节省篇幅,下略>技巧提示:只有第一个中断(Reset中断)是每个程序都应该有的,在不需要其它中断的情况下,可以只用这一部分,后面可以省略。
《微机原理与应用教学资料》第七章 中断(课件)

中断源 硬件屏蔽 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章中断系统

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.开中断
目的:开放所有可屏蔽中断,以允许高级中断嵌套。
微机原理及应用,中断向量表

中断向量表
8086中断向量
0H 除以零
1H 单步(用于DEBUG)
2H 非屏蔽中断
3H 断点指令(用于DEBUG)
4H 溢出
5H 打印屏幕
6H 保留
7H 保留
8259中断向量
8H 定时器
9H 键盘
AH 彩色/图形
BH 异步通讯(secondary)
CH 异步通讯(primary)
DH 硬磁盘
EH 软磁盘
FH 并行打印机
BIOS中断
10H 屏幕显示
11H 设备检验
12H 测定存储器容量
13H 磁盘I/O
14H 串行通讯口I/O
15H 盒式磁带I/O
16H 键盘输入
17H 打印机输出
18H BASIC入口代码
19H 引导装入程序
1AH 日时钟
提供给用户的中断
1BH Ctrl-Break控制的软中断
1CH 定时器控制器的软中断
数据表指针
1DH 显示器参量表
1EH 软盘参量表
1FH 图形表
DOS中断
20H 程序结束
21H 系统功能调用
22H 结束退出
23H Ctrl-Break退出24H 严重错误处理
25H 绝对磁盘读功能26H 绝对磁盘写功能27H 驻留退出
28H-2EH DOS保留
2FH 打印机
30H-3FH DOS保留
BASIC中断
40H-5FH 保留
60H-67H 用户软中断68H-7FH 保留
80H-85H 由BASIC保留86H-F0H BASIC中断
F1H-FFH 保留。
微机原理与接口技术_西安工业大学中国大学mooc课后章节答案期末考试题库2023年

微机原理与接口技术_西安工业大学中国大学mooc课后章节答案期末考试题库2023年1.中断向量表地址指针就是中断向量。
答案:错误2.程序查询IO方式,程序由查询等待和_____两部分组成。
答案:数据交换3.查询输入时,Ready=0表示数据端口已经放入数据,Ready=1表示______。
答案:数据端口的数据已经取走4.微型计算机的ALU部件是包含在()之中。
答案:CPU5.由CS和IP的内容表示的是()。
答案:下一条待执行指令的地址6.对微处理器而言,它的每条指令都有一定的时序,其时序关系是()。
答案:一个指令周期包括几个机器周期,一个机器周期包括几个时钟周期。
7.MOV CX,10MOV AL,20HXOR BX,BX AGAIN:ADD BL,ALADC BH,0 LOOP AGAIN; MOV AX,BX;程序执行后,AX的内容是()答案:0120H8.MOV BX,OFFSET [1341H] 执行结果为(BX)=()H答案:13419.将中断允许标志清零的指令是答案:CLI10.中断向量表里面存放的是答案:中断服务程序入口地址11.NMI中断类型码规定为()答案:212.中断控制器8259A有个命令字答案:413.可屏蔽中断的响应过程。
首先必须满足中断允许标志IF置_______答案:114.8259A中的中断屏蔽寄存器是ISR答案:错误15.在8088/8086中,内中断源的级别均比外中断源级别高。
答案:正确16.转中断服务之前,断点地址入栈,是由硬件自动完成的。
答案:正确17.8259A只有奇偶两个端口地址答案:正确18.判断下列指令的对错IMUL 56H答案:错误19.8086/8088 CPU是在每个总线周期结束时,对INTR信号采样。
答案:错误20.8259A的端口地址是20H和21H。
发中断结束命令的指令是__MOVAL,20H__和_____指令。
答案:OUT 20H,AL21.中断响应引脚是_____。
第7章 中断西北工业大学微机原理PPT课件

使用25H功能时要求:AL=中断类型号,DS∶DX=中断服
务程序首地址的段、偏移地址。
PUSH DS
;保存当前数据段
MOV DX,SEG INT60H
MOV DS,DX
MOV DX,OFFSET INT60H
MOV AL,60H
;设中断类型号为60H
MOV AH,25H
INT 21H
POP DS
13
比如:除法错误(n=0) 调试异常(n=1)
NMI中断(n=2) 断点中断(n=3)
溢出中断(n=4)
……
5
5.中断处理顺序
第七章 中断
6
第七章 中断
6.中断向量表和中断描述符表 每个中断都分配有中断类型码,CPU通过中断类型码 经过处理要找到对应的中断服务程序的入口地址。 .实模式: 由中断向量表将中断类型码和中断服务
地址。 规定:中断向量表中各向量等长,且处理程序入口地
址在向量表中按中断源的类型码排序。
重要公式:
向量地址=向量表的首地址 + 中断类型码*4
讨论:已知中断类型码n,如何得到中断服务程序入口
地址?
8
保护模式:
第七章 中断
.中断描述符表(IDT):在内存中的首地址保存在CPU内 部的IDTR系统寄存器中。
第七章 中 断
7.1 中断与异常中断 7.2 向量中断系统 *7.3 多任务系统 *7.4 任 务 转 换 7.5 可编程中断控制器8259A 7.6 中断向量表的建立方法 7.7 CPU的中断处理顺序
第七章 中断
1
第七章 中断
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
微机原理课件_第七章_微型计算机中断系统

位IF的影响,中断类型号由指令INT n中的n决定。正在执行软 件中断时,如果有不可屏蔽中断请求,就会在当前指令执行完 后立即予以响应。如果有可屏蔽中断请求,并且IF=1,也会在 当前指令执行完后予以响应。 二、中断向量表 寻找中断源可以用查询中断及矢量中断两种方法。 查询中断是采用软件查询方法,中断响应后启动中断查 询程序,依次查询哪个设备的中断请求触发器为1,检测到后, 转向此设备预先设置的中断服务程序入口地址。此方法较简单, 但花费时间多,并且后面的设备服务机会少,在8086系统中一 般采用矢量中断方法。 矢量中断是将每个设备的中断服务程序的入口地址(矢 量地址)集中,依次放在中断向量表中。当CPU响应中断后, 控制逻辑根据外设提供的中断类型号查找中断向量表,然后将 中断服务程序的入口地址送到CS段寄存器和指令指针IP,CPU 转入中断服务子程序。这样大大加快了中断处理的速度。
图7-2 可屏蔽中断处理流程图
一、CPU响应中断过程 CPU响应中断要有三个条件: ●外设提出中断申请 ●本中断位未被屏蔽 ●中断允许 当中断接口电路中的中断屏蔽触发器未被屏蔽时,外设 可通过中断接口发出中断申请。外设向CPU发出中断请求的时 间是随机的,而CPU在每条指令的最后一个机器周期的最后一 个T状态去采样中断请求输入线INTR,当CPU在INTR引脚上 接收到一个有效的中断请求信号,而CPU内部的中断允许触发 器是开放的,则在当前指令执行完后CPU响应中断。 CPU响应中断后,对外设接口发出两个中断响应信号 ,第一个 INT A信号通知外设,CPU已响应申请的中断请 INT A 求,准备发送中断类型号;当外设收到第二个 INT A 以后,立即 往数据线上给CPU送中断类型号。CPU在响应外部中断,并转 入相应中断服务子程序的过程中,自动依次做以下工作:
《微机原理与接口技术》习题解答7

《微机原理与接口技术》习题解答习题77.1 什么是中断?常见的中断源有哪几类?CPU响应中断的条件是什么?【解答】中断是指CPU在正常执行程序时,由于内部/外部时间或程序的预先安排引起CPU暂时终止执行现行程序,转而去执行请求CPU为其服务的服务程序,待该服务程序执行完毕,又能自动返回到被中断的程序继续执行的过程。
常见的中断源有:一般的输入/输出设备请求中断;实时时钟请求中断;故障源;数据通道中断和软件中断。
CPU响应中断的条件:若为非屏蔽中断请求,则CPU执行完现行指令后,就立即响应中断。
CPU若要响应可屏蔽中断请求,必须满足以下三个条件:①无总线请求;②CPU 允许中断;③CPU执行完现行指令。
7.2 简述微机系统的中断处理过程。
【解答】(1)中断请求:外设需要进行中断处理时,向CPU提出中断请求。
(2)中断响应:CPU执行完现行指令后,就立即响应非屏蔽中断请求。
可屏蔽中断请求,CPU若要响应必须满足三个条件。
(3)中断处理:保护现场、开中断、中断服务。
(4)中断返回:CPU执行IRET中断返回指令时,自动把断点地址从堆栈中弹出到CS 和IP中,原来的标志寄存器内容弹回Flags,恢复到原来的断点继续执行程序。
7.3 软件中断和硬件中断有何特点?两者的主要区别是什么?【解答】硬件中断由外部硬件产生,是由CPU外部中断请求信号触发的一种中断,分为非屏蔽中断NMI和可屏蔽中断INTR。
软件中断是CPU根据某条指令或者对标志寄存器的某个标志位的设置而产生的,也称为内部中断。
通常有除法出错中断、INTO溢出中断、INT n中断、断点中断和单步中断等。
两者的主要区别:硬件中断由外部硬件产生,而软件中断与外部电路无关。
7.4 中断优先级的排队有哪些方法?采用软件优先级排队和硬件优先级排队各有什么特点?【解答】软件优先级排队:各中断源的优先权由软件安排。
优点是电路比较简单,可以直接修改软件查询顺序来修改中断优先权,不必更改硬件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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
中断过程
五个步骤:
中断请求
中断判优/排队
(有时还要进行中断源
识别)
请求
中断响应
中断服务/处理
中断返回
主程序
中断服务程序
响应
排队 硬/ 软 INT n
16
中断处理过程
在满足中断响应条件以后,CPU就响应中断请求, 并自动关中断,然后进入中断服务程序,在中断服务程 序中要完成以下工作:
保护现场
开中断
完成输入输出或异常处理的服务程序
关中断
恢复现场
开中断
中断返回
17
8086/8088 CPU的中断响应过 程
内部中断响应过程 :
无INTA周期
外部中断:来自处理器外部的中断,如键盘引起 的中断;
内部中断:由处理器电路或中断指令产生的中断, 如除0中断,int指令等。
4
8086的中断向量表
存放各类中断的中断服务程序的入口地址CS:IP(段 CS和偏移IP)——中断向量
表的地址位于内存的00000H~003FFH,大小为 1KB,共256个中断向量(中断向量表)
引脚分配及功能见右图
8259A
CPU响应INTR中断时,会产生两个中断响应总线周 期INTA,要求PIC在第2个中断响应总线周期把中断 类型码 n 放到数据总线上,供CPU读入。
12
中断优先级
背景:系统有多个终端,而CPU同一个时
刻只能响应一个中断,为了解决这个矛 盾应按中断的轻重缓急来确定中断的优 先级别.
13
8088/8086系统中各中断的优先级
溢出中断:类型号4,这是一个软件中断,即INTO指令。
若算术指令的执行结果发生举出(OF=1),则执行指 令后立即产生一个中断类型码为4的中断。
软件中断:即INT n指令,类型号n(0-255)。
7
外部中断的种类
非屏蔽中断:类型号2,不可用软件屏蔽,时CPU才能响应。
6
内部中断的种类
除法溢出:类型号0,执行除法指令时,若发现除数为0或商大于
目的操作数所能表达的范围时产生。
单步中断:类型号1,TF=1时产生(当前指令需执行完)。 断点中断:类型号3,这是一个软件中断,即INT 3指令。一般
用于程序调试,在断点中断服务程序中,可显示有关寄存器、存储 单元等内容,以便程序员分析到断点为止程序是否正确。
优先级从高到低顺序如下:
高
软件中断、内部中断 (除单步中断外)
NMI
INTR
单步中断
低
14
中断判优
中断优先级控制要处理两种情况: 对同时产生的中断:应首先处理优先级别较高的中断; 若优先级别相同,则按先来先服务的原则FIFO处理; 对非同时产生的中断:低优先级别的中断处理程序允 许被高优先级别的中断源所中断——即允许中断嵌套。
返回
服务/ 处理 IRET
以下以外部中断为主介绍这五个步骤。 10
8086/8088中断源类型
中断指令 INT n
软件 硬件
(n=0~255)
内部/软件中断请求
外部/硬件中断请求
软件中断指令 溢出中断 断点中断 除法错 单步中断
n 2
4
3 中断逻辑
0
内部排队
1
中断开关
8086/8088 CPU内部逻辑
每个中断向量占用4 Bytes,低字为段内偏移IP,高 字为段基址CS
根据中断类型号n获得中断服务程序入口的方法: 中 断向量在IVT中的存放地址=4×n (中断向量地址)
5
初始化——将中断服务 程序的入口地址放入向 量表 例:中断类型码n为48H 的中断处理子程序的名 字为int48h.
高8位 低8位
通常将中断判优与中断源识别合并在一起进行处理。 x86系统中,这项任务由PIC(8259)和 CPU(8086/8088)共同完成。
15
CPU响应中断的条件
内部中断请求:直接转入中断周期, 由内部硬件自动执行预定的操作。
外部中断请求:中断屏蔽触发器开放; CPU内部是中断开放的;没有更高级 的中断请求正在被响应或正在发出; CPU现行指令结束;
⑦ 取中断向量送入IP’和CS’
19
可编程中断控制器8259A
PIC,Programmable Interrupt
Controller
可对8个中断源实现优先级控制 (单个管8个) 可扩展至对64个中断源实现优 先级控制(9个管64个)
可编程设置不同工作方式(多套 管理方案)
根据中断源向x86提供不同中断 类型码n(来访者1人1号)
非屏蔽中断NMI,中断类型码为固定(2)
与内部中断响应过程类似
可屏蔽中断INTR
① INTA(1)PIC进行优先级排队判优处理
② INTA(2)PIC把中断类型码n放到DB上,CPU读入
③ PUSH FLAG
④ IF=TF=0(关可屏蔽中断和单步中断) ⑤ PUSH CS
与内部中断一样
⑥ PUSH IP