一、关中断
处理器响应中断后,首先要保护
程序的现场状态,在保护现场过程中, CPU
不应该响应更高级中断源的中断请求
。否则
,如果现场保
存不完整,在中断服务程序结束后,也就不能正确
地恢
复并继续执行
现行程序。
二、保存断点
为了保证中断服务程序执行完
毕后能
正确
地返回到原来的程序,必须将原来程序的断点保存起来。断点可以压入堆栈,也可以存入
主存
的特
定单元中。
三、引出中断服务程序
引出中
断服务程序的
实质就是取出中断服务程序的入口地址送入程序计数器(
PC)
。
通常有两种方法寻址中断服务程序的入口地
址:
硬件向量法和
软件
查询法。
1.硬件向量法是通过硬件产生中断向量地址,再由中断向量地址找到中断服务程序的入口地址
。
2.软
件查询法是用软件编程的办法寻找入口地址。
四、保存现场和屏蔽字
进入中断服务程序后首先要保存现场,现场信息一般指的是程序状态字、中断屏蔽寄存器和CPU中某些寄存器的内容。
五、开中断
这将允许更高级中断请求得到响应, 实现中断嵌套。
六、执行中断服务程序
这是中断系统的核心。不同的中断请求会有不同的中断服务程序。
七、关中断
保
证在恢复
现场和
屏蔽字时不被
中断。
八、恢复现场和屏蔽字
将现场和屏蔽字恢复到原来的状态。
九、开中断及中断返回
中断服务程序的最后一条指令提交通常是一条中断返回指令
,使其返回到原
程序的
断点处,以便
继续
执行原程序。
十、总结
知识拓展:
中断嵌套是指中断系统正在执⾏⼀个中断服务时,有另⼀个优先级更⾼的中断提出中断请求,这时会暂时终⽌当前正在执⾏的级别较低的中断源的服务程序,去处理级别更⾼的中断源,待处理完毕,再返回到被中断了的中断服务程序继续执⾏,这个过程就是中断嵌套。