中断技术的基本原理

中断技术的基本原理,第1张

中断是指CPU对系统发生的某个事件作出的一种反应:CPU暂停正在执行的程序,保留现场后自动转去执行相应的处理程序,处理完该事件后再返回断点继续执行被"打断"的程序

在我们所用的电脑中,所有的硬件都需要执行中断请求的动作,简单说它的作用就是用来停止其相关硬件的工作状态。我们可以举一个日常生活中的例子来说明,假如你正在给朋友写信,电话铃响了,这时你放下手中的笔去接电话,通话完毕再继续写信。这个例子就表现了中断及其处理的过程:电话铃声使你暂时中止当前的工作,而去处理更为急需处理的事情——接电话,当把急需处理的事情处理完毕之后,再回过头来继续原来的事情。在这个例子中,电话铃声就可以称为“中断请求”,而你暂停写信去接电话就叫作“中断响应”,那么接电话的过程就是“中断处理”。由此我们可以看出,在计算机执行程序的过程中,由于出现某个特殊情况(或称为“事件”),使得系统暂时中止现行程序,而转去执行处理这一特殊事件的程序,处理完毕之后再回到原来程序的中断点继续向下执行,而这个过程就被称为中断。

中断的作用

我们可以再举一个例子来说明中断的作用。假设有一个朋友来拜访你,但是由于不知何时到达,你只能在门口等待,于是什么事情也干不了;但如果在门口装一个门铃,你就不必在门口等待而可以在家里去做其他的工作,朋友来了按门铃通知你,这时你才中断手中的工作去开门,这就避免了不必要的等待。而计算机也一样,例如打印文稿的 *** 作。因为cpu传送数据的速度高,而打印机速度较慢,如果不采用中断技术,cpu将经常处于等待状态,这会使得电脑的工作效率极低。而采用了中断方式后,cpu就可以在打印的同时进行其他的工作,而只在打印机缓冲区内的当前内容打印完毕,而发出中断请求之后才予以响应,这时才暂时中断当前的工作转去执行停止打印的 *** 作,之后再返回执行原来的程序。这样就大大地提高了计算机系统的效率。

中断相当于随机地在正在运行的程序中插入了另一段程序,即中断处理程序,中断处理完成后再返回源程序继续执行。这就要求在执行中断有3部曲:1、 收到中断请求时首先要保护现场,即将当前的主要寄存器的值压入堆栈,包括程序地址计数器、数据地址计数器、累加器等;2、根据中断号找到中断向量,得到中断处理程序的地址,执行中断处理程序;3、恢复现场,即将中断时压入堆栈的寄存器值出栈,返回到原程序继续执行。

中断必须在当前指令执行完毕后才会响应。

中断可以嵌套,中断分优先级,只有优先级高的中断才可以中断优先级低的中断。

在执行实时性要求高的任务时,可以屏蔽某些中断。

中断请求可以由某一引脚的信号产生,也可以由软件指令产生(软中断)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8117781.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存