微机80X86中断系统

合集下载

微机原理第六章习题2

微机原理第六章习题2

关于I/O多选1、所谓I/O操作,是指对的操作。

A、I/O端口B、I/O设备C、A或B2、在I/O接口的各种寄存器中,必须具有三态输出功能。

A、控制寄存器B、状态寄存器C、数据缓冲寄存器3、全互锁异步总线协定相对于同步总线协定,具有的优点。

A、可靠性高,传输速度快B、可靠性高,适应性好C、传输速度快,适应性好4、在I/O端口的编址方式中,隔离I/O方式相对于存储器映象方式,具有的优点。

A、I/O端口地址译码简单、程序设计灵活B、I/O端口地址不占用存储地址空间、译码简单C、读写控制逻辑简单、程序设计灵活5、主机与设备传送数据时,采用,CPU的效率最高。

A、程序查询方式B、中断方式C、DMA方式6、在三一菊花链判决中,主控器Ci占用总线的条件之一是必须栓测到BGINi由无效烃有效的边沿,设置该条件的目的是A、保证先请求者先服务B、避免总线冲突C、保证物理上靠近判决器者先服务7、计算机使用总线结构便于增减外设,同时。

A、减少了信息的传输量B、提高了信息的传输量C、减少了信息传输线的条数8、有8086/8088中,一个最基本的总线周期由4个时钟周期(T状态)组成,在T1状态,CPU往总线发出信息。

A、数据B、地址C、状态9、当采用输入数据时,除非计算机等待,否则无法传送数据给计算机。

A、程序查询方式B、中断方式C、DMA方式10、微机读写控制信号的作用是。

A、决定数据总线上的数据流的方向B、控制存储器读写操作的类型C、控制流入、流出存储器信息的方向D、A、B和C11、IO接口中数据总线缓冲器的作用是A对错判断1、主机与设备传输数据时,采用程序查询控制方式,主机与设备是串行工作的。

2、总线冲突是指总线上同时有两个或两个以上的模块要传送相互矛盾的信息引起的冲突。

3、总线周期是微处理器中处理动作的最小时间单位。

4、DMA方式与程序控制方式的根本不同之处是可直接实现I/O设备与存储器之间、I/O 设备与I/O设备之间、存储器与存储器之间的信息交换。

不同CPU中断技术的比较

不同CPU中断技术的比较

不同CPU中断技术的比较微机原理的研究型课题不同CPU中断技术的对比中断是指CPU在正常执行程序的过程中,由于某个外部或内部事件的作用,强迫CPU停止当前正在执行的程序,转去为该事件服务(称为中断服务),待服务结束后,又能自动返回到被中断的程序中继续执行。

对不同的CPU,中断技术略有不同,以下就不同的三种CPU 做了相关的研究对比。

x86的中断系统中断结构及类型中断源申请方式80x86共256种中断,中断号00H--0FFH。

内部中断:由CPU 运行程序错误或执行内部程序调用引起的一种中断。

80X86中断z不可屏蔽硬件中断(NMI):中断请求不可被屏蔽。

外部中断z可屏蔽硬件中断(INTR):受允许中断标志为IF 控制。

中断优先级管理方式多个中断请求同时发生,响应顺序按优先级排列。

高级中断可以打断低级中断,反之则不行。

80x86优先级从高到低排序是:内部中断和异常(单步除外)、软件中断、外部不可屏蔽中断、外部可屏蔽中断、单步中断。

中断处理过程中断处理过程通常由中断申请、中断响应、中断处理、中断返回四个过程完成。

(1)实模式下的中断处理流程如图所示:微机原理的研究型课题CPU工作在实地址模式下时,可以响应和处理外部中断NMI 和INTR,内部中断12种异常。

CPU在当前指令执行完毕后,按中断源的优先顺序去检测和查询是否有中断请求,当查询到有内部中断发生时,中断类型号n由CPU内部形成或由指令本身提供;当查询到有NMI请求时,自动转入中断类型2进行处理;当查询到有INTR请求时,响应的条件是IF=1,其中断类型号n 由请求设备在中断响应周期自动给出;当查询到单步请求TF=1时,并且在IF=1时自动转入中断类型1进行处理。

(2)保护模式下的中断调用过程如图所示:微机原理的研究型课题当CPU响应外部中断请求或执行某条指令产生异常时,根据中断或异常的类型号n,从中断描述符表IDT中找到相应的中断门,由中断描述符中的段选择符指向全局描述符表GDT或局部描述符表LDT中的目标段描述符,此目标段描述符内的段基址指向中断服务程序代码段的基地址,由该基地址与中断描述符中的偏移量之和形成中断服务程序的入口。

中断与查询的的特点

中断与查询的的特点

中断方式与轮询方式比较
中断的基本概念
程序中断通常简称中断,是指CPU在正常运行程序的过程中,由于预选安排或发生了各种随机的内部或外部事件,使CPU中断正在运行的程序,而转到为相应的服务程序去处理,这个过程称为程序中断。
二、80x86微处理器的中断 80x86微处理器的中断类型一般分为2类,即由于执行某些指令引起的软中断和由处理器以外其他控制电路发出中断请求信号引起的硬中断。 CPU要从主程序转入中断服务程序,必须知道该中断服务程序的入口地址,即中断向量。80x86为CPU的PC机共有256个中断向量。
Байду номын сангаас
实际的中断过程还要复杂一些,下图示出了中断处理过程的详细流程图.当CPU执行完—条现行指令时,如果外设向CPU发出中断请求、那么CPU在满足响应条件的情况下,将发出中断响应信号,与此同时关闭中断(“中断屏蔽”触发器置“1”),表示CPU不再受理另外—个设备的中断。这时、CPU将寻找中断请求源是哪个设备。并保存CPU自己的程序计数器(Pc)的内容.然后,它将转移到处理该中断源的中断服务程序.CPU在保存现场信息,设备(如文换数据)以后.将恢复现场信息.在这些动作完成以后,开放中断(“中断屏蔽”触发器置‘o”),并返网到原来被中断的主程序的下一条指令。
中断的一般过程:
主程序只是在设备A,B,C数据准备就绪时,才去处理A,B ,C,进行数据交换。在速度较慢的外围设备准备自己的数据时,CPU照常执行自己的主程序 。在这个意义上说,CPU和外围设备的一些操作是并行地进行的,因而同串行进行的程序查询方式相比,计算机系统的效率是大大提高了。如下图:
(1) 尽管外界中断请求是随机的,但CPU只有在当前一条指令执行完毕后,即转入公操作时才受理设备的中断请求,这样才不致于使当前指令的执行受到干扰。公操作是指一条指令执行结束后CPU所进行的操作,如中断处理、直接内存传送、取下条指令等 。外界中断请求信号通常存放在接口中的中断源锁存器里,并通过中断请求线连至CPU,每当一条指令执行到末尾,CPU便检查中断请求信号。若中断请求信号为“1”,则CPU转入“ 中断周期”,受理外界中断。(2) 为了在中断服务程序执行完毕以后正确地返回到原来主程序被中断的断点(PC内容)而继续执行主程序,必须把程序计数器PC的内容,以及当前指令执行结束后CPU的状态(包括寄存器的内容和一些状态标志位)都保存到堆栈中去。这些操作叫做保存现场。(3) 当CPU响应中断后,正要去执行中断服务程序时,可能有另一个新的中断源向它发出中断请求。为了不致造成混乱,在CPU的中断管理部件中必须有一个中断屏蔽触发器,它可以在程序的控制下置“1”(设置屏蔽),或置“0”(取掉屏蔽)。只有在中断屏蔽标志为“0”时,CPU才可以受理中断。当一条指令执行完毕CPU接受中断请求并作出响应时,它一方面发出中断响应信号INTA,另一方面把中断屏蔽标志置“1”,即关闭中断。这样,CPU不能再受理另外的新的中断源发来的中断请求。只有在CPU把中断服务程序执行完毕以后,它才重新使中断屏蔽标志置“0”,即开放中断,并返回主程序。因此,中断服务程序的最后必须有两条指令,即开中断指令和返主指令,同时在硬件上要保证返主指令执行以后才受理新的中断请求。(4) 中断处理过程是由硬件和软件结合来完成的。如在前图中,中断周期由硬件实现,而中断服务程序由机器指令序列实现。后者除执行保存现场、恢复现场、开放中断并返回主程序任务外,对要求中断的设备进行服务,使其同CPU交换一个字的数据,或作其他服务。

微机原理第7章 8086中断系统和中断控制器

微机原理第7章 8086中断系统和中断控制器

3)高级中断源能中断低级的中断处理
中断嵌套 当CPU正在响应某一中断源的请求,执行为其服务的中断服务程序时, 如果有优先级更高的中断源发出请求,CPU将中止正在执行的中断服务程 序而转入为新的中断源服务,等新的中断服务程序执行完后,再返回到被 1 中止的中断服务程序,这一过程称为中断嵌套。 • 中断嵌套可以有多级,具体级数原则上不限,只取决于堆栈深度。
外部中断 非屏蔽中断 可屏蔽中断
可屏蔽中断源
CPU 中断逻辑
INTR
8259A 中断 INTA 控制器
INT N 指令
INTO 指令
除法 错误
单步 中断
IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7
外 设 中 断 源
内部中断: 除法错中断 指令中断 溢出中断 单步中断
硬件(外部)中断 非屏蔽中断请求 INT 2 NMI(17号引脚) 中 断 逻 辑 可屏蔽中断请求 中断类型号32~255 INTR(18号引脚)
中断指令 INT n N=32~255
溢出中断 INTO INT 4
断点 中断 INT 3
单步中断 (TF=1) INT 1
除法 错误 INT 0
软件(内部)中断
8086/8088中断源
1.软件中断(内部中断) 8086/8088的软件中断主要有三类共五种。 (1) 处理运算过程中某些错误的中断 执行程序时,为及时处理运算中的某些错误 ,CPU以中断方式中止正在运行的程序,提醒程 序员改错。 ① 除法错中断(中断类型号为0)。在8086 /8088 CPU执行除法指令(DIV/IDIV)时,若发现 除数为0,或所得的商超过了CPU中有关寄存器所 能表示的最大值,则立即产生一个类型号为0的 内部中断,CPU转去执行除法错中断处理程序。

不同CPU中断技术对比

不同CPU中断技术对比

不同CPU中断技术对比摘要:本文大体论述了80x86,80c51,和ARM在中断源,中断申请方式、中断优先级管理方式、中断的处理过程、中断向量等方面比较。

关键词:CPU,80x86,80c51,,ARM,中断申请方式,中断优先级管理方式,中断的处理过程,中断向量。

正文:一、X86 CPU,80C51,ARM中断源:X86 CPU支持256个中断向量,中断号00H--0FFH 。

0~19是系统预定义的异常和NMI,20~31被Intel保留,如表1。

所以,外部中断从32开始。

CPU处理的流程都一样,在执行完当前指令后,根据中断源提供的中断向量,在IDT中找到并调用相应的服务例程。

X86 CPU中断分为内部中断和外部中断。

内部中断分为:软中断,内部中断和异常,异常分为3种:Fault:可以被更正的错误,异常处理程序的返回地址是产生fault的指令。

Trap:执行trap指令(例如INT 3)后被报告的异常,异常处理程序的返回地址是产生trap指令的后一条指令。

Abort:严重错误,无法继续执行。

外部中断分为:不可屏蔽硬件中断和可屏蔽硬件中断。

不可屏蔽硬件中断(02H):由NMI端引入的中断请求,中断请求不可被屏蔽;可屏蔽硬件中断请求:由INTR端引入,中断请求可由IF=0进行屏蔽,使中断请求不进入。

表180C51的中断系统包括中断源、中断允许寄存器IE、中断优先级寄存器IP、中断矢量等。

在80C51中,只有两级中断优先级。

图1是80C51的中断系统结构示意图。

80C51有5个中断源分别为:两个外部中断源INT0、INT1和三个内部中断源T0、T1定时/计数谥出中断源和串行口发送或接收中断源。

外部中断是由外部信号引起的,它们的中断请求信号分别从引脚INT0和INT1上引入图1ARM 7TDMI具有常规中断(IRQ)、快中断(FIQ)和软件中断(SoftWare Interrupt)三种中方式。

常规中断和快中断都是硬件中断。

6-中断

6-中断
中断指令( 指令) 中断指令(INT n 指令) NMI INTR 溢出 中断 断点 中断 单步 中断 除法 出错 中断 控制器 8259A ┆ ┆ 可屏蔽 中断 请求 软件 优先权 排队 ┆ ┆ 非屏蔽 中断 请求
中断控制逻辑
专用中断
软件(内部) 软件(内部)中断
硬件(外部) 硬件(外部)中断
PC 微机中断类型号表
8086/8088的向量中断 的向量中断
中断类型号——8086/8088最多能管理 最多能管理256个中断,统一编 个中断, ◆中断类型号 最多能管理 个中断 号为0~255(00H~FFH)。 号为 ( ) 中断向量——中断服务程序的入口地址 , 即 段基址 : 中断服务程序的入口地址, 段基址CS: ◆ 中断向量 中断服务程序的入口地址 偏移址IP 偏移址 。 中断向量表——8086/8088系统规定在内存的最低 字节 系统规定在内存的最低1K字节 ◆中断向量表 系统规定在内存的最低 段的0000H~03FFH)建立了中断向量表,按中断类型 (0段的 段的 )建立了中断向量表, 号顺序存放256个中断向量。 个中断向量。 号顺序存放 个中断向量 中断向量表地址——中断向量在中断向量表中的地址。中 中断向量在中断向量表中的地址。 ◆中断向量表地址 中断向量在中断向量表中的地址 断向量表地址与中断类型号的关系为: 断向量表地址与中断类型号的关系为: 中断向量表地址= 中断类型号n× 中断向量表地址 中断类型号 ×4
软件中断响应过程
软件中断类型号 由系统分配(专用)或由中断( 类型号n由系统分配 ◆软件中断类型号 由系统分配(专用)或由中断(INT)指令指定, )指令指定, 自动获得中断类型号 所以软件中断能自动获得中断类型号n 所以软件中断能自动获得中断类型号 。 设置中断类型号 必须事先设置中断类型号n 中断向量表。 ◆ 必须事先设置中断类型号 的中断向量表。 ◆ 软件中断响应过程: 软件中断响应过程: 状态寄存器和中断断点(返回地址 : 压入堆栈; 状态寄存器和中断断点(返回地址CS:IP ) 压入堆栈; 中断类型号n× ,得到中断向量表地址; 中断类型号 ×4,得到中断向量表地址; 读取连续 个字节的内容 中断向量, 读取连续4个字节的内容 连续 个字节的内容——中断向量,送入 和CS; 中断向量 送入IP和 ; 根据当前的CS: ,转中断服务子程序执行 执行; 根据当前的 :IP,转中断服务子程序执行; 当执行到中断返回 中断返回( 当执行到 中断返回 ( IRET)指令时 , 弹出堆栈中的状态寄存器和 ) 指令时, 返回地址,回到中断断点继续执行主程序。 返回地址,回到中断断点继续执行主程序。

资料:经典的80x86指令系统(指令大全)

资料:经典的80x86指令系统(指令大全)

80x86指令系统80x86的指令系统可以分为以下6组:数据传送类指令算术指令逻辑指令串处理指令控制转移指令处理机控制指令1、数据传送指令数据传送类指令负责把数据、地址或立即数传送到寄存器或存储单元中。

它又可以分为五种:1.1、通用数据传送指令MOV 传送MOVSX 带符号扩展传送MOVZX 带零扩展传送PUSH 进栈POP 出栈PUSHA 所有寄存器进栈POPA 所有寄存器出栈XCHG 交换(1)MOV传送指令格式为:MOV DST,SRC执行操作:(DST)<——(SRC)MOV指令可以在CPU内或CPU和存储器之间传送字或字节,MOV指令不影响标志位(2)MOVSX带符号扩展传送指令格式为:MOVSX DST,SRC执行操作:(DST)<——符号扩展(SRC)该指令的源操作数可以是8位或16位的寄存器或存储单元的内容,而目的操作数则必须是16位或32位寄存器,传送时把源操作数扩展送入目的寄存器。

MOVSX不影响标志位(3)MOVZX带零扩展传送指令格式为:MOVZX DST,SRC执行操作:(DST)<——零扩展(SRC)MOVSX和MOVZX指令与一般双操作数指令的差别是:一般双操作数指令的源操作数和目的操作数的长度是一致的,但MOVSX和MOVZX的源操作数长度一定要小于目的操作数长度(4)PUSH进栈指令格式为:PUSH SRC执行操作:16位指令:(SP)<——(SP)-2((SP)+1),(SP))<——(SRC)32位指令:(ESP)<——(ESP)-4((ESP)+3),(ESP)+2),(ESP)+1)(ESP))<——(SRC)(5)POP出栈指令格式为:POP DST16位指令:(DST)<——((SP)+1),(SP))(SP)<——(SP)+232位指令:(DST)<——((ESP)+3),(ESP)+2),(ESP)+1)(ESP))(ESP)<——(ESP)+4堆栈是一种“后进先出”方式工作的一个存储区,它必须存在于堆栈段中,因而其段地址存放于SS寄存器中。

北京交通大学微机原理与接口技术考题及答案

北京交通大学微机原理与接口技术考题及答案

北京交通大学微机原理与接口技术考题及答案(共7页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--微机原理与接口技术2006—2007学年第1学期(A卷答案)一、填空题(每空1分,共15分)1.在实模式下,80486微处理器使用的地址线是20 条,存储器的最大寻址空间是 1MB ,存储器分段的最大容量是 64KB 。

2.计算机的数据表示的范围由字长n决定,若n=16,有符号数的表示范围是+32767~-32768 ,无符号数的表示范围是0~65535 。

3.在实模式下,设(CS)=1200H,(IP)=FF00H,指令的物理地址为21F00H 。

4.设(SP)=1000H,(AX)=2010H,执行指令PUSH AX后,(SP)= 0FFEH 。

的引脚信号NMI的功能是接受不可屏蔽中断请求。

6.在MOV 1100H[BX],AX 中,目标操作数的寻址方式是基址寻址。

7.在DMA传送中,8237A可提供的存储器的地址是 16 位。

8. 8259A中ISR是 8 位的寄存器,其作用是记录CPU正在服务的中断请求。

9.将中断允许标志IF置“1”的指令是 STI 。

10.ADC0809有 8 个模拟输入通道,可转换的模拟信号的范围是0~5V 。

二、选择题(选择正确答案,每题1分,共10分)1.在80x86中断系统中,中断向量表用于存放( C )(A)中断类型号(B)中断服务程序(C)中断服务程序的入口地址(D)中断源类型2.指令MOV AX,1000H ,源操作数存放在( A )(A)代码段中(B)堆栈段中(C)数据段中(D)附加段中3.串指令的源地址由( A )提供。

(A)DS:SI提供(B)CS:IP提供(C)ES:SI提供(D)SS:SP提供4.将寄存器AL的低4位屏蔽,应当用的指令是( B )(A)AND AL,0FH (B)AND AL,0F0H(C)XOR AL,0FH (D)XOR AL,0F0H5..执行JZ指令,转移的条件是( C )(A)ZF=0 (B)CF=0(C)ZF=1 (D)CF=126.EPROM芯片Intel 2764,片内寻址需要的地址线是( C )(A)11条(B)12条(C)13条(D)14条7.启动ADC 0809转换的命令是( A )(A)OUT 端口,AL (B)MOV 端口,AL(C)OUT AL,端口(D)MOV AL,端口8.若8250输入的基准时钟频率,除数寄存器装入60H时,则波特率为(C )(A)4800 (B)2400 (C)1200 (D)3009.CPU响应INTR中断请求的条件是(C )(A)TF=1 (B)DF=1 (C)IF=1 (D)CF=110.某中断的类型号为16,其对应向量表的地址是( C )(A)0020H (B)0030H (C)0040H (D)0050H三、改正下列语句的错误(每题1分,共4分)(1)MOV 20H, AL(2)POP CS(3)ADD [DI],[SI](4)INC AX,1四、回答下列问题(每题3分,共6分)1.当CPU响应INTR中断请求后,CPU是如何获取中断类型号?答:在第二个INTA中断响应周期,由8259 将中断类型号送上数据总线,送给CPU。

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

⑴ 非屏蔽中断



通过非屏蔽中断请求信号向微处理器提出的中断请 求,微处理器无法禁止,将在当前指令执行结束予 以响应,这个中断被称为非屏蔽中断 8088的非屏蔽中断的向量号为2,非屏蔽中断请求 信号为NMI 非屏蔽中断主要用于处理系统的意外或故障。例如:

电源调电前的数据保护 存储器读写错误的处理
第6章
微型计算机的中断系统
6.1 中断系统 6.1.1 中断的基本概念 6.1.2 中断系统功能 6.1.3 中断处理过程 6.1.4 中断管理 6.2 80X86中断结构 6.2.1 中断分类 6.2.2 中断管理过程 6.2.3 中断向量和中断向量表 6.2.4 8086的中断 6.3 中断控制器8259A 6.3.1 8259A的功能 6.3.2 8259A的内部结构和引脚 6.3.3 8259A的工作方式 6.3.4 8259A的编程 6.3.5 8259A的级联
6.3.2 8259A的内部结构和引脚特性功能
8259A的内部结构
1. 中断控制

中断请求寄存器IRR

保存8条外界中断请求信号IR0~IR7的请求状态 Di位为1表示IRi引脚有中断请求;为0表示无请求 保存正在被8259A服务着的中断状态 Di位为1表示IRi中断正在服务中;为0表示没有被服务 保存对中断请求信号IR的屏蔽状态 Di位为1表示IRi中断被屏蔽(禁止);为0表示允许

中断服务寄存器ISR


中断屏蔽寄存器IMR

2. 与处理器接口
A0 RD* WR* CS* 0 1 0 1 × × 1 1 0 0 1 × 0 0 1 1 1 × 0 0 0 0 0 1 功能 写入ICW1、OCW2和OCW3 写入ICW2~ICW4和OCW1 读出IRR、ISR和查询字 读出IMR 数据总线高阻状态 数据总线高阻状态
IR1
IR2 IR3
A.
假定IR3发生中 断,并获得服务
去CPU
IR3
INT IR4
IR5
INT IR4
IR5
IR6 IR7
IR6
IR7
E.
D. 特殊嵌套方式: IR4 的 中 断 被 服
务时,只封锁 IR5-IR7。
特殊嵌套方式: 因主片不封锁从片的 INT,故级别高的IR0IR2中断可以得到响应。 ( 但 IR3-IR7 仍 被 本 从 片封锁)
2. 结束中断处理方式
什么是8259A的中断结束? 8259A利用中断服务寄存器ISR判断: 某位为1,表示正在进行中断服务; 该位为0,就是该中断结束服务。 这里说明如何使ISR某位为0, 不反映CPU的工作状态。
2. 结束中断处理方式(续)

自动中断结束方式 普通中断结束方式


配合全嵌套优先权方式使用 当CPU用输出指令往8259A发出普通中断结束 EOI命令时,8259A就会把所有正在服务的中 断中优先权最高的ISR位复位 配合循环优先权方式使用 CPU在程序中向8259A发送一条特殊中断结束 命令,这个命令中指出了要清除哪个ISR位
6.2.2 中断管理过程
现行指令 软件中断 N Y Y Y Y
查询中断的顺序, 决定了各种中断源的优先权 软件中断 高 除法错中断

NMI N INTR N TF=1 N 下条指令
中断响应周期 IF=1 非屏蔽中断 读中断向量号
指令中断 溢出中断
Y N

可屏蔽中断 单步中断

8086的中断响应过程

外部中断
除法 单步 非屏蔽中断 错误 中断

INTA 控制器
INT N 指令
INTO 指令
可屏蔽中断
IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7
外 设 中 断 源
1. 内部中断



内部中断是由于8086内部执行程序出现异 常引起的程序中断 利用内部中断,微处理器为用户提供了发 现、调试并解决程序执行时异常情况的有 内部中断的中断向量号已定 效途径 例如,ROM-BIOS和DOS系统利用内部中 断为程序员提供了各种功能调用
8259A的中断过程
第一个周期 T1 T2 T3 T4 CLK ALE LOCK INTAБайду номын сангаас第二个周期 T1 T2 T3 T4
动画
CPU响应周期
D0~D7
SP/EN CAS0~CAS2 IR0~IR7 INT 第一个前保持为高电平 8259A工作波形
6.3.3 8259A的工作方式
普通全嵌套方式 优先权固定方式 特殊全嵌套方式 设置优先权方式 自动循环方式 优先权循环方式 特殊循环方式 自动中断结束方式 结束中断处理方式 普通中断结束方式 非自动中断结束方式 特殊中断结束方式 普通屏蔽方式 屏蔽中断源方式 特殊屏蔽方式 边沿触发方式 中断触发方式 电平触发方式 缓冲方式 数据线连接方式 非缓冲方式


SP*/EN*引脚为输入端 若8259A级连,由其确定是主片或从片
6.3.4 8259A的编程

初始化编程

8259A开始工作前,必须进行初始化编程 给8259A写入初始化命令字ICW 在8259A工作期间 可以写入操作命令字OCW将选定的操作传 送给8259A,使之按新的要求工作 还可以读取8259A的信息,以便了解他的 工作状态

特殊全嵌套方式 优先权自动循环方式 优先权特殊循环方式

一般全嵌套方式与特殊全嵌套方式的区别
B. 一 般 嵌 套 方 式 :
主8259A
IR0 IR1 IR2
IR4的中断被服务 时,这些中断将 被封锁。
C. 一般嵌套方式:
从8259A
IR0
从片的INT被主片封 锁,故更高级别的 IR0-IR2中断也无法 得到响应
例如:DEBUG.EXE调试程序的单步命令T就利 用单步中断实现对程序的单步调试
2. 外部中断




外部中断是由于8086外部提出中断请求引 起的程序中断 利用外部中断,微机系统可以实时响应外 部设备的数据传送请求,能够及时处理外 部意外或紧急事件 外部中断的原因是处理器外部随机产生的, 所以是真正的中断(Interrupt) 内部中断的原因是处理器执行程序出现异 常,所以经常被称为异常(Exception)
6.3 中断控制器8259A
6.3.1 8259A的功能 Intel 8259A是可编程中断控制器PIC 可用于管理Intel 8086、80286、80386的可 屏蔽中断 8259A的基本功能


一片8259A可以管理8级中断,可扩展至64级 每一级中断都可单独被屏蔽或允许 在中断响应周期,可提供相应的中断向量号 8259A设计有多种工作方式,可通过编程选择
3. 中断级连

示例
动画



一个系统中,8259A可以级连,有一个主8259A, 若干个(最多8个)从8259A 级连时,主8259A的三条级连线CAS0~CAS2作 为输出线,连至每个从8259A的CAS0~CAS2 每个从8259A的中断请求信号INT,连至主8259A 的一个中断请求输入端IR 主8259A的INT线连至CPU的中断请求输入端 SP*/EN*在非缓冲方式下,规定该8259A是主片 (SP*=1)还是从片(SP*=0)
6.2 80X86中断系统

8086的中断系统 能够处理256个中断 用中断向量号0~255区别 可屏蔽中断还需要借助专用中断控制 器Intel 8259A实现优先权管理
6.2.1 中断分类
非屏蔽中断源 内部中断
NMI
可屏蔽中断源
CPU
除法错中断 指令中断 INTR 8259A 溢出中断 中断逻辑 中断 单步中断
⑴ 除法错中断
在执行除法指令时,若除数为0或商超过 了寄存器所能表达的范围,则产生一个向 量号为0的内部中断,称为除法错中断 例如:mov bl,0

idiv bl
;除数BL=0,产生除法错中断
mov ax,200h mov bl,1 div bl ;商=200H,不能用AL表达 ;产生除法错中断

边沿触发方式

8259A将中断请求输入端出现的 上升沿作为中断请求信号 中断请求端出现的高电平是有 效的中断请求信号

电平触发方式

5. 数据线连接方式

缓冲方式

8259A的数据线需加缓冲器予以驱动 8259A把SP*/EN*引脚作为输出端,输出允 许信号,用以锁存或开启缓冲器

非缓冲方式
⑵ 可屏蔽中断




外部通过可屏蔽中断请求信号向微处理器提出的 中断,微处理器在允许可屏蔽中断的条件下,在 当前指令执行结束予以响应,同时输出可屏蔽中 断响应信号,这个中断就是可屏蔽中断 8086的可屏蔽中断请求和响应信号分别是INTR和 IF控制可屏蔽中断的响应 INTA*;由IF标志控制可屏蔽中断是否允许响应; 向量号来自外部中断控制器 8086通常需要配合中断控制器8259A共同处理可 屏蔽中断 可屏蔽中断主要用于主机与外设交换数据

特殊中断结束方式

3. 屏蔽中断源方式

普通屏蔽方式


将IMR的Di位置1,则对应的中断IRi被屏 蔽,该中断请求不能从8259A送到CPU 如果IMR的Di位置0,则允许IRi中断产生

特殊屏蔽方式

将IMR的Di位置1,对应的中断IRi被屏蔽 的同时,使ISR的Di位置0
4. 中断触发方式
⑵ 指令中断


在执行中断调用指令INT n时产生的一个 向量号为n(0 ~ 255)的内部中断,称为 指令中断 其中向量号为3的指令中断比较特别(生 成一个字节的指令代码:11001100),常 用于程序调试,被称为断点中断
相关文档
最新文档