计算机中的中断处理流程

一、关中断

处理器响应中断后,首先要保护 程序的现场状态,在保护现场过程中, CPU 不应该响应更高级中断源的中断请求 。否则 ,如果现场保 存不完整,在中断服务程序结束后,也就不能正确 地恢 复并继续执行 现行程序。

二、保存断点

为了保证中断服务程序执行完 毕后能 正确 地返回到原来的程序,必须将原来程序的断点保存起来。断点可以压入堆栈,也可以存入 主存 的特 定单元中。

三、引出中断服务程序

引出中 断服务程序的 实质就是取出中断服务程序的入口地址送入程序计数器( PC)
通常有两种方法寻址中断服务程序的入口地 址: 硬件向量法和 软件 查询法。 
1.硬件向量法是通过硬件产生中断向量地址,再由中断向量地址找到中断服务程序的入口地址
2.软 件查询法是用软件编程的办法寻找入口地址。

四、保存现场和屏蔽字

进入中断服务程序后首先要保存现场,现场信息一般指的是程序状态字、中断屏蔽寄存器和CPU中某些寄存器的内容。

五、开中断

这将允许更高级中断请求得到响应, 实现中断嵌套。

六、执行中断服务程序

这是中断系统的核心。不同的中断请求会有不同的中断服务程序。

七、关中断

证在恢复 现场和 屏蔽字时不被 中断。

八、恢复现场和屏蔽字

将现场和屏蔽字恢复到原来的状态。

九、开中断及中断返回

中断服务程序的最后一条指令提交通常是一条中断返回指令 ,使其返回到原 程序的 断点处,以便 继续 执行原程序。

十、总结

计算机中的中断处理流程_第1张图片

 

知识拓展:

中断嵌套是指中断系统正在执⾏⼀个中断服务时,有另⼀个优先级更⾼的中断提出中断请求,这时会暂时终⽌当前正在执⾏的级别较低的中断源的服务程序,去处理级别更⾼的中断源,待处理完毕,再返回到被中断了的中断服务程序继续执⾏,这个过程就是中断嵌套。

你可能感兴趣的:(计算机组成原理,每日学习,单片机)