文档详情

(14)中断及中断控制器8259621-(精品课件).ppt

发布:2018-10-11约8.66千字共22页下载文档
文本预览下载声明
第*页 电气工程学院 6.2 中断及中断控制器8259 6.2.1 中断的基本概念 (1)什么是中断 在日常生活中,中断现象俯拾皆是…… 在计算机系统中,一个CPU要处理若干事务:数据采集,运算,显示,处理突发事件,通信,打印…….。这就要求采用中断技术,才能作到面面俱到而又不误突发事件的处理时机。 计算机用于测控领域,必然涉及中断。在计算机中,中断的含义很狭窄: 从程序执行的角度看:CPU正在执行的当前程序被外设打断,转而执行为外设服务的所谓“中断服务程序”(ISR:Interrupt Service Routine)。 当前 程序 外设n的中断服务程序 CPU INTR 中断请求触发器 外设n 当前程序 : CALL SUBR : 子程序 *外设随机诱发中断,转入中断服务程序 *硬、软件配合寻找入口地址 *由CALL指令引起转入子程序 *预知何时转入子程序 *入口地址直接从CALL中取得 SUBR 从数据传送的角度看,是主机与外设交换信息的一种方式。 (2)中断源与中断向量表 中断源 : 能够引发CPU中断的信息源,称为中断源。80X86微机系统中最多允许有256种中断源,其中中断源类型编号为0~255。 *中断系统:为了实现中断而配置的硬件和软件构成的系统 1)内中断(软中断) 指CPU执行某些特殊操作或由INT指令引起的中断,通常分为以下三类: ① 执行INT n 指令引起的中断,n=00~FFH ② CPU中断 在执行指令的过程中出现某些需要处理的异常而产生的中断。 ③ 使用调试程序中的单步或断点设置操作引起的中断. ① INT n 指令 (n = 0~255) 如 INT 21H 执行该指令后,转入系统的“21H型中断服务程序”,执行由AH指定的子程序 21H型中断服务程序 根据AH内容进入某一子程序 AH=01 AH=02 AH=09 AH=0A AH=4C 01H 功能 02H 功能 09H 功能 0AH 功能 4CH 功能 : : : ② CPU中断 此类中断使用了0、1、3、4、6、7中断号 *1 除法错中断 (属于CPU的0型中断) 除数为0或商超过有关寄存器所能表示的最大值,产生除法错中断 *2 INTO指令 溢出中断指令(属于CPU的4型中断) 例: ADD AL,BL INTO ;当OF=0,不引起INTO操作 ;当OF=1时,引起溢出中断 *BOUND指令(数组边界检查指令)中断 检查带符号的数组下标是在由包含上界和下界的存储器块所限定的范围内。下标超出范围就产生中断。 ③单步调试中断 当标志寄存器中的自陷位TF=1且中断允许标志位IF=1时,CPU处于单步工作方式。 在TD环境下,F7,F8键作为设定功能键,在这两个键的处理程序中,使TF=1,IF=1。 在TD环境中,可以在程序中需要的位置处插入INT 3指令,执行到该指令处,CPU中断正常执行过程,便于调试程序。 在用户程序中执行INT 3无意义。 (2)外中断(重点) 由外设向CPU发出中断请求。 1)非屏蔽中断 NMI (Non-Maskable Interrupt) 不受CPU内部中断允许标志IF的屏蔽 2)可屏蔽中断 INTR (maskable INTRrupt) 受CPU内部中断允许标志IF的屏蔽 STI指令, 使IF=1,CPU可以接受来自INTR引脚上的中断请求。 术语:开中断 / 中断允许 / 允中 CLI指令, 使IF=0,CPU不接受来自INTR引脚上的中断请求。 术语:关中断 / 中断禁止 CPU NMI INTR 当NMI上有正跳变信号时,即产生一个内部引导的类型2中断。NMI引脚上的中断请求不受IF标志的控制,IF不能屏蔽NMI引脚上的中断请求。 IF=1,CPU响应INTR引脚上的中断请求; IF=0,CPU不响应INTR引脚上的中断请求 通过INTR引脚传递到CPU的可屏蔽中断,中断类型号可以为6~255 *中断系统:为了实现中断而配置的硬件和软件构成的系统 (3)中断向量表 (P166)(注意内容的展开) 1)中断源的识别 中断技术的核心问题 ——寻找中断服务程序的入口地址 *识别中断源和寻找入口地址的复杂性 在INTR引脚上可以连接250(6~255)个中断源。 CP
显示全部
相似文档