7.3 程序中断方式

合集下载

7.3 CPU与外设之间的数据传送方式

7.3  CPU与外设之间的数据传送方式

(3)连续方式 )
连续操作方式是指在数据块传送的整个过程中, 连续操作方式是指在数据块传送的整个过程中,不 请求是否撤消, 控制器始终控制着总线。 管DMA请求是否撤消,DMA控制器始终控制着总线。 请求是否撤消 控制器始终控制着总线 除非传送结束或检索到“匹配字节” 除非传送结束或检索到“匹配字节”,才把总线控制 权交回CPU。在传送过程中,当DMA请求失效时, 请求失效时, 权交回 。在传送过程中, 请求失效时 DMA控制器将等待它变为有效,却并不释放总线。 控制器将等待它变为有效, 控制器将等待它变为有效 却并不释放总线。
返 回

如图7-3-6所示,试编程实现将48000H 所示,试编程实现将 如图 所示 为首地址的顺序100个单元的数据,利用 个单元的数据, 为首地址的顺序 个单元的数据 查询方式输出到外设。 查询方式输出到外设。
程序如下: 程序如下: START: MOV AX, 4000H MOV DS, AX MOV SI, 8000H MOV CX, 100 GOON: MOV DX, 00F1H WAIT: IN AL, DX AND AL, 01H JZ WAIT MOV AL, [SI] MOV DX, 00F0H OUT DX, AL INC SI LOOP GOON RET
返 回
DMA控制器从CPU完全接管对总线的控制, DMA控制器从CPU完全接管对总线的控制,数据 控制器从CPU完全接管对总线的控制 交换不经过CPU 而直接在内存和I/O CPU, I/O设备之间 交换不经过CPU,而直接在内存和I/O设备之间 进行。 进行。 优点:传送速率很高, 优点:传送速率很高,这对高速度大批量数据传 送特别有用。 送特别有用。 缺点:要求设置DMA控制器,电路结构复杂, 缺点:要求设置DMA控制器,电路结构复杂,硬 DMA控制器 件开销大

简述中断的流程

简述中断的流程

中断的流程引言中断是计算机系统中一种重要的机制,用于处理硬件设备请求、异常情况和优先级较高的任务。

在任何计算机系统中,中断都起到极其关键的作用。

本文将详细探讨中断的流程。

中断的定义和分类中断是指计算机在执行某个任务的过程中,临时停止当前正在运行的程序,转而去执行另一段程序(中断服务程序),处理发生的事件。

中断可以分为硬件中断和软件中断两种类型。

硬件中断硬件中断是由外部设备的请求引起的中断,常见的硬件中断包括定时器中断、外部设备中断(如键盘、鼠标等)和异常中断(如除零错误、缺页错误等)。

软件中断软件中断是由程序员在程序中主动发出的中断请求,通过软件指令触发,实现用户与硬件的交互。

例如,在操作系统中,通过系统调用可以触发软件中断。

中断的流程中断的触发中断的触发是由硬件设备或软件指令生成的,当满足中断触发条件时,中断信号将被发送给中断控制器。

中断控制器收到中断信号后,会进行中断的响应。

它首先会保存当前的程序状态,包括程序指针、寄存器的值等,并将程序控制权转移给中断服务程序。

中断服务程序的执行中断服务程序是一个与中断相关的程序段,用于处理特定的中断事件。

它会根据中断类型进行相应的处理操作,如读取设备数据、更新系统状态等。

初始化中断服务程序中断服务程序在执行之前,需要进行初始化工作。

这包括保存当前状态、设置中断服务程序的入口地址等。

中断服务程序的执行过程中断服务程序一般分为两个阶段:前半部分和后半部分。

前半部分中断服务程序的前半部分主要是进行必要的初始化工作,以及保存当前的程序状态。

此阶段的目标是尽快地使中断事件得到响应,保证硬件设备的正常工作。

后半部分中断服务程序的后半部分是真正的中断处理过程,它会根据中断类型进行具体的处理操作。

处理完毕后,中断服务程序将恢复中断之前的状态,包括恢复寄存器的值、恢复程序的执行等。

中断服务程序的完成与返回中断服务程序的完成意味着中断处理的终结。

在完成之前,中断服务程序需要恢复中断之前的状态,并将程序控制权返回给被中断的程序或操作系统。

中断方式的名词解释

中断方式的名词解释

中断方式的名词解释中断方式是计算机操作系统中的一种重要机制,用于处理实时事件和优先级任务的调度。

它允许计算机在执行程序时,根据事件的紧急程度,临时中断当前任务并转而执行其他任务,然后再返回原来的任务继续执行。

本文将对中断方式进行详细解释。

一、中断方式的概念和原理中断方式是一种计算机操作系统提供的一项功能,可以在执行用户程序时,根据硬件或软件条件的变化,实现对当前任务的暂停和其他任务的执行。

它通过外部设备或软件代码向CPU发送中断信号,以引起CPU的注意并响应,然后根据中断的类型和优先级,执行相应的中断服务程序。

中断方式的原理是基于计算机系统中断控制器的工作机制。

当外部设备或软件代码需要CPU的处理时,它会向中断控制器发送中断请求信号。

中断控制器将中断请求转发给CPU,并根据中断请求的优先级,确定中断源和中断向量。

在接收到中断请求后,CPU会立即停止正在执行的任务,并保存当前任务的上下文(包括寄存器的状态、程序计数器等信息)。

接着,CPU根据中断向量,跳转到相应的中断服务程序中执行。

中断服务程序是预先编写好的,用于处理特定的中断类型,如时钟中断、键盘中断等。

执行完中断服务程序后,CPU会恢复原来的任务,并继续执行。

二、中断方式的分类根据中断请求的来源,中断方式可分为外部中断和内部中断。

外部中断是由外部设备引起的中断。

它包括硬件中断和输入输出中断。

硬件中断指的是外部设备(如时钟、键盘、鼠标等)工作时所产生的中断请求。

输入输出中断指的是当CPU执行输入输出指令时,外部设备未完成操作而导致的中断请求。

内部中断是由程序中的指令引起的中断。

它包括陷阱和软件中断。

陷阱是在程序执行过程中,根据特定的条件而产生的中断请求,如除法溢出、非法指令等。

软件中断是由软件代码主动产生的中断请求,例如系统调用、中断指令等。

三、中断方式的优势和应用中断方式具有以下优势和应用:1. 实时响应能力:中断方式可以迅速响应外部设备或软件的中断请求,及时处理实时性要求高的任务,如键盘输入、网络通信等。

微机原理第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转去执行除法错中断处理程序。

程序中断方式的五个阶段

程序中断方式的五个阶段

程序中断方式的五个阶段
程序中断是指在程序执行过程中,由于某种原因需要暂停当前的任务,转而执行其他的任务。

常见的程序中断方式包括以下五个阶段:
1. 中断请求(Interrupt Request,IRQ):外部设备通过发送中断请求信号通知处理器需要进行中断处理。

这个信号可以是来自硬件设备的电信号,也可以是软件发出的中断请求指令。

2. 中断响应(Interrupt Acknowledge,INTA):处理器收到中断请求信号后,会发送中断响应信号,以确认接收到中断请求,并准备进行中断处理。

3. 中断服务例程(Interrupt Service Routine,ISR):一旦处理器确认接收到中断请求,它会暂停当前的任务,转而执行预先定义好的中断服务例程。

中断服务例程是一段特定的代码,用于处理特定的中断事件。

4. 中断处理(Interrupt Handling):中断服务例程会根据中断事件的类型进行相应的处理,可能包括保存当前任务的上下文,执行特定的操作,处理中断事件相关的数据等。

5. 中断返回(Interrupt Return):当中断处理完成后,处理器会从中断服务例程返回到被中断的任务,并恢复之前保存的上下文信息,继续执行原来的任务。

中断和中断处理流程

中断和中断处理流程

中断和中断处理流程转⾃:1. 中断概念中断是指由于接收到来⾃外围硬件(相对于中央处理器和内存)的异步信号或来⾃软件的同步信号,⽽进⾏相应的硬件/软件处理。

发出这样的信号称为进⾏中断请求(interrupt request,IRQ)。

硬件中断导致处理器通过⼀个上下⽂切换(context switch)来保存执⾏状态(以程序计数器和程序状态字等寄存器信息为主);软件中断则通常作为CPU指令集中的⼀个指令,以可编程的⽅式直接指⽰这种上下⽂切换,并将处理导向⼀段中断处理代码。

中断在计算机多任务处理,尤其是实时系统中尤为有⽤。

这样的系统,包括运⾏于其上的操作系统,也被称为“中断驱动的”(interrupt-driven)。

中断是⼀种使CPU中⽌正在执⾏的程序⽽转去处理特殊事件的操作,这些引起中断的事件称为中断源,它们可能是来⾃外设的输⼊输出请求,也可能是计算机的⼀些异常事故或其它内部原因。

中断:在运⾏⼀个程序的过程中,断续地以“插⼊”⽅式执⾏⼀些完成特定处理功能的程序段,这种处理⽅式称为中断。

2. 中断的作⽤并⾏操作硬件故障报警与处理⽀持多道程序并发运⾏,提⾼计算机系统的运⾏效率⽀持实时处理功能3. 术语按中断源进⾏分类:发出中断请求的设备称为中断源。

按中断源的不同,中断可分为1. 内中断:即程序运⾏错误引起的中断2. 外中断:即由外部设备、接⼝卡引起的中断3. 软件中断:由写在程序中的语句引起的中断程序的执⾏,称为软件中断允许/禁⽌(开/关)中断: CPU通过指令限制某些设备发出中断请求,称为屏蔽中断。

从CPU要不要接收中断即能不能限制某些中断发⽣的⾓度,中断可分为1. 可屏蔽中断:可被CPU通过指令限制某些设备发出中断请求的中断,那是不是意味着进中断时disable整个中断,其实disable的都是可屏蔽中断?2. 不可屏蔽中断:不允许屏蔽的中断如电源掉电中断允许触发器:在CPU内部设置⼀个中断允许触发器,只有该触发器置“1”,才允许中断;置“0”,不允许中断。

第7章 中断系统

第7章 中断系统

可 屏 蔽 中 断 请 求
软件中断
硬件中断
小结: 中断分类及中ຫໍສະໝຸດ 类型码8086/8088系统最多可处理256级不同类型的中断。
可屏蔽中断(INTR) 外部中断(硬件中断) 非屏蔽中断(NMI,中断类型码2) 中断分类 单步中断(中断类型码1) 内部中断(软件中断) 断点中断(中断类型码3) 溢出中断(中断类型码4) Int n 中断
器退出暂停状态,响应中断,进入中断处理程序。
若现行指令为WAIT指令,且 TEST 引脚加入低电平信号, 则中断请求信号INTR产生后,便使处理器脱离等待状态,响 应中断,进入中断处理程序。
HLT: 暂停指令
(4) 8259A连续两次接收(2个总线周期) INTA = 0的中断 响应信号后,便通过总线将中断矢量号送CPU。 (5) 保护断点。将标志寄存器内容、当前CS内容及当前IP 内容压入堆栈: (SP)←(SP)-2
((SP)+1:(SP))←(PSW)
(SP)←(SP)-2 ((SP+l:(SP))←(CS) (SP)←(SP)-2 ((SP)+1:(SP))←(IP)
(6) 清除IF及TF(IF←0,TF←0),以便禁止其它可屏蔽中 断或单步中断发生。 (7) 求中断程序的入口地址 :根据8259A向CPU送的中断 矢量号n求得矢量地址,再查中断矢量表,得相应中断处理程 序首地址(段内偏移地址和段地址),并将 位首地址置入CS及
7.1 概述
中断和异常是处理器处理突发事件时所采取的两种不同 的处理方法,具体来说,中断指的是处理器暂停当前的程序, 转而去处理中断事件;而异常虽然也会对异常事件作出反应, 但不一定会暂停当前的程序。 在8086/8088处理器时代,中断主要包括外部中断 和 内 部中断两种。 在386/486等32位处理器时代,内部中断的数量和功能被 扩充,习惯上,称内部中断为异常,而中断则主要指外部中 断。

《汇编语言程序设计》第十三章中断及中断处理程序

《汇编语言程序设计》第十三章中断及中断处理程序

《汇编语言程序设计》第十三章中断及中断处理程序汇编语言程序设计第十三章中断及中断处理程序中断是计算机系统中的重要概念,它可以打断正在执行的程序,并在一段时间后恢复执行。

在汇编语言程序设计中,了解中断及中断处理程序的概念和实现方法十分重要。

本文将介绍《汇编语言程序设计》第十三章中断及中断处理程序的内容。

一、中断的概念及分类中断是计算机系统的一种基本机制,它可以让计算机在执行程序的过程中,暂时停下来去处理一些紧急事件。

根据中断的来源和性质,中断可以分为硬件中断和软件中断两种类型。

硬件中断是由硬件设备发出的信号,用于向处理器发出请求,以引起处理器对该事件进行处理。

典型的硬件中断包括时钟中断、外部设备中断等。

软件中断是由程序中的中断指令引起的中断。

软件中断可以通过INT指令来触发,程序员可以根据需要自行设置中断号。

二、中断向量表中断向量表是用于存储中断处理程序入口地址的一张表。

当某个中断发生时,处理器会根据中断号在中断向量表中查找对应的中断处理程序入口地址,并跳转到该地址去执行中断处理程序。

中断向量表一般位于内存的固定地址,不同中断号对应不同的中断处理程序入口地址。

由于中断向量表的地址是固定的,因此在编程时需要特别注意保护中断向量表。

三、中断的处理流程中断处理程序是用于响应中断事件并进行处理的程序。

中断的处理流程一般包括以下几个步骤:1. 保存中断现场:在处理中断之前,需要先保存当前程序的上下文,包括程序计数器、寄存器等内容。

这样在中断处理程序执行完毕后,可以恢复现场继续执行被中断的程序。

2. 中断服务例程:中断处理程序中的核心部分是中断服务例程,它实现了对中断事件的具体处理。

根据中断的类型和需求,中断服务例程可能包括对硬件设备的操作、数据处理等内容。

3. 恢复中断现场:在中断处理程序执行完毕后,需要恢复之前保存的中断现场。

这包括恢复程序计数器、寄存器等内容,以确保被中断的程序可以继续正常执行。

四、常见的中断类型及应用在汇编语言程序设计中,有一些常见的中断类型和应用。

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

第7.3 中断控制技术7.3.1 中断的基本概念一、数据传送控制方式1.查询方式CPU随时询问接口数据传送完毕或数据准备情况。

在查询方式下,CPU完成下列操作:·CPU向接口发出传送命令、输入/输出数据命令。

·CPU查询接口状态,数据发送是否完毕或输入数据是否准备好。

·如接口状态允许发送,则CPU向接口发送数据;如输入数据准备好,则CPU取回数据。

2.中断方式中断方式,CPU不用定时查询接口状态,而是由接口逻辑在数据发送完毕或接收数据准备好时通知CPU,CPU则暂时中止当前的操作转去完成中断源的数据发送或接收数据。

3.DMA方式DMA方式是数据不经过CPU在存储器与外设之间直接传送的操作方式,DMA适合大量的高速数据传送,如存储器与磁盘之间的数据传送。

二、什么是中断中断---计算机的CPU正在执行主程序时,遇到各种原因使CPU暂时中止主程序的执行,转去执行或处理临时发生的事件,处理完毕再返回到被停下来的主程序处继续执行。

或:中断---指CPU在正常运行程序时,由于内部/外部事件或由程序的预先安排引起CPU中断正在运行的程序,而转到为内部/外部事件或为预先安排的事件服务的程序中去。

服务完毕,再返回去继续执行被暂时中断的程序。

三、中断的作用有了中断技术以后主机与外设可以并行工作,从而提高主机的工作效率。

同时还有如下优点:⑴实时处理;⑵分时操作;⑶故障处理;⑷实现多道程序运行,多机联接,人机对话等。

四、中断源、中断识别·中断源---引起中断的原因或发出中断请求的来源。

1.外部设备---键盘、打印机。

2.数据通道的中断源---软磁盘、硬磁盘。

3.软件设置的中断---程序中用指令产生的中断。

4.故障请求中断---电源掉电、存储器出错、运算溢出。

5.调试程序而设置的中断。

·中断识别---CPU寻找中断源1.目的:形成该中断源的中断服务程序的入口地址,以便CPU将此地址置入CS:IP寄存器,实现程序的转移。

2.CPU识别中断或获取中断服务程序入口地址的方法⑴向量中断---中断服务程序的入口地址是在CPU响应中断以后,发出中断回答INTA时,由中断控制器通过数据总线输送给CPU的。

⑵查询中断---是采用软件查询技术确定发出中断请求的中断源。

7.3.2 8086/80286微型计算机的中断机制一、总体结构┏━━┓ INTR ┏━━┓┃┣━━━┫┣━━中断源┃8088┃┃8259┃.┃ CPU┃┃中断┃.┃┃NMI ┃控制┃.┃┃┃器┣━━┗━━┛┗━━┛┏━━━┓┃控制┃┃┣━━中断源┃逻辑┃┗━━━┛INTR(Interrupt Request):由8259管理的可屏蔽中断,来自与CPU相连的各个外设和数据通道。

NMI(Non Maskable Interrupt):非屏蔽中断,只要有中断请求而CPU则一定响应,一般用于紧急情况,如不及时处理则会造成严重后果的情况。

NMI的中断源:⑴系统板上RAM校验出错;⑵扩展槽连接的设备出错;⑶8087异常中断。

二、中断类型IBM-PC允许有256级中断,分别叫作类型0、类型1、类型2......直到类型255中断。

其中:0~4H---内部专用中断;8~0FH---8259控制的8级硬件中断;10~1FH---ROM-BIOS调用的软件中断;20~FFH---DOS中断调用和保留的中断。

所有这些类型可以归纳为两类即:1.软件中断在执行下述指令时,将产生或可能产生中断,这些中断统称为软中断。

①DIV(除)或IDIV(整除)指令---除法错(类型0H)当执行这类除法指令时,若除数为0或溢出,则产生中断,这类中断称为0型中断。

②INT指令---指令中断(含断点中断)(类型3H)当执行中断指令INT n 时,则产生 n 型中断。

③INTO 指令---溢出中断(类型4H)若在指令序列执行过程中,使溢出标志位OF=“1”时;若接着执行的是INTO指令,则引起内部中断,这类中断称为4型中断。

若溢出标志位OF=“0”则该指令不起作用。

④单步执行---单步中断(类型1H)若单步标志(即FR中的T位)TF=“1”时,则每执行一条指令后就自动产生类型 1 的中断,作为单步执行指令的调试手段。

2.硬件中断IBM-PC/XT有两条中断请求线:非屏蔽中断NMI和可屏蔽中断INTR线;在这两条线上产生中断请求信号而引起的中断谓之硬件中断。

①非屏蔽中断---NMI(类型2H)当NMI线上出现一个由低到高的上升沿的中断请求时,不论标志位是何种状态,当前指令执行完以后CPU立即响应。

②可屏蔽中断---INTR(类型8~0FH)当INTR线上出现高电平中断请求信号时,若标志位I=“1”则CPU处于开中断,因而可以响应;若I=“0”则CPU不响应。

“I”的状态可由指令设置。

三、中断向量表中断向量---CPU响应中断以后,中断源提供地址信息,由地址信息对程序的执行进行导向,引导到中断服务程序中去,故把这个地址信息称为中断向量(即指中断服务程序的入口地址,或者称作中断服务程序入口点的内存地址)。

中断向量表---(中断指示表)集系统中的所有中断向量并存储在某一区域内,这个存放中断向量的存储区就称为中断向量表。

中断类型号---为了便于在中断向量表中找到中断向量(入口地址),通常设置一指针,由它指出中断向量存放在向量表的什么位置,即中断向量的地址,该指针在PC系列中由中断类型号提供。

中断向量表的组成:中断向量表是由中断类型号与该中断类型相对应的中断处理子程序入口地址之间的连接表。

8088中断向量表占用内存中00000H~003FFH的1KB空间,表中内容分256项,对应于0~255,每一项占四个字节,存放中断服务程序入口地址。

高两字节存放在段地址部分,低两字节放在段内偏移地址部分。

即:高地址字---中断服务程序所在代码段的基址;低地址字---偏移地址。

即由:CS与IP二者共同决定。

中断服务程序入口地址的形成:中断服务程序的调用时,对于任一指定类型中断,CPU只将其类型号乘以4(乘完以后需转换成16进制)就可以得到该类型的中断服务程序入口地址的最低字节地址;类型号乘4再加2则得到该类型的中断服务程序入口地址的高位字节地址。

然后顺序取出这4个字节的内容分别送到IP和CS,这样就实现了对中断服务程序的调用。

中断向量表例1.计算类型编码33外设中断服务程序3FFH ┏━━━━┓的起始地址存放在中断向量表中的哪┃类型 255┃个单元?3FCH ┠────┨偏移地址的单元:┃·┃由Type×4得┠────┨ 33×4=132=84H┃类型 33 ┃084H ┠────┨代码段基址的单元:┃类型 32 ┃由Type×4+2得080H ┠────┨ 33×4+2=134=86H┃类型 31 ┃07FH ┠────┨从而进入以CS:IP为入口的中断服务┃·┃程序。

┠────┨┃类型 5 ┃例2.计算中断类型号13H中断服务014H ┠────┨程序单元?┃类型 4 ┃ 13H×4=004CH即010H ┠────┨┃类型 3 ┃│中断向量│00CH ┠────┨│·│┃类型 2 ┃│·│008H ┠────┨ 004FH │ 00 │┐CS ┐类┃类型 1 ┃ 004EH │ 70 │┘│型004H ┠────┨ 004DH │ 0F │┐IP │编┃类型 0 ┃ 004CH │ C9 │┘─┘码000H ┗━━━━┛则中断向量为0070H(CS):0FC9(IP)由此即得中断服务程序的入口地址(即科上P11中:段寄存器内容左移4位,右边补四个0,形成20位的段起始地址;再加上16位段内偏移量从而形成20位的存储器物理地址)。

四、中断类型号的获得1.除法错误,单步中断,NMI,断点中断和溢出中断均由微处理器内部硬件自动提供0~4H;2.软件(指令)中断则是从指令流中,即在第二个字节中读得中断类型号;3.外部中断INTR可以用两种方法获得中断类型号:①根据用户自己设计的接口电路,利用寄存器/缓冲器组件存放中断类型号。

微处理器响应中断以后,接口电路则将此类型号送入数据总线,微处理器读数据总线从而获得中断类型号;②利用8259中断控制器提供。

五、中断向量的装入例如:假设中断类型号为60H,中断服务程序的段基址是SEG-INTR,偏移地址是OFFSET-INTR(006DH),则填写中断向量的程序为:1.用MOV指令填写中断向量表···CLICLDMOV AX,0MOV ES,AXMOV DI,4*60H ;中断向量指针→DIMOV AX,OFFSET-INTR ;中断服务程序偏移值→AXSTOSW ;AX→[DI][DI+1]中,然后DI+2 MOV AX,SEG-INTR ;中断服务程序的段基址→AXSTOSW ;AX→[DI+2][DI+3]STI···2.将中断服务程序的入口地址直接写入中断向量表···MOV AX,00HMOV ES,AXMOV BX,60H*4 ;中断号*4→BXMOV AX,006DH ;中断服务程序偏移地址MOV ES:[BX],AX ;装入偏移值PUSH CSPOP AX ;中断服务程序段基址MOV ES:[BX+2],AX ;装入段基址···3.采用DOS功能调用“INT 21H”中的 AH=25H 来装入中断向量MOV AX,N ;中断号MOV AH,25H ;设置中断向量MOV DX,SEG-INTRMOV DS,DX ;DX指向中断程序段址MOV DX,OFFSET-INTR ;DX指向中断程序偏移量INT 21H六、中断过程一个完整的中断过程需要以下五步:1.中断源引起中断请求①外部由硬件产生中断请求信号;②内部由指令设置。

2.中断优先级排队当系统有多个中断源时,同时可能有几个中断源同时提出请求,CPU要根据各自的轻重缓急进行优先级排队,响应优先级最高的请求。

3.中断响应①外部:┌─在可屏蔽情况下,IF(CPU内部标志寄存器的中断允许位)为“0”( 可│中断允许被封闭),CPU检测不到外部中断请求即屏│中断被屏蔽。

蔽│在非屏蔽情况下,IF(标志寄存器的中断允许位)为“1”(中断允许中│被打开),CPU可以接受外部的中断请求,转入中断│断周期。

└─────── IF的打开用STI指令,IF的关闭用CLI指令。

②内部:直接转入中断周期。

其中不可屏蔽中断有以下情况需注意:┌─ NMI---表示:8087出现异常;────┐不│系统板上DRAM奇校验出错;│外部控制电路输出可│扩充板上DRAM奇校验出错。

相关文档
最新文档