问答题 简述一次中断处理的完整过程。
【正确答案】
【答案解析】一次中断处理的完整过程包括如下步骤:
(1)关中断,保证在此之后的一小段时间之内CPU不能响应新的中断请求。
(2)保存断点(PC的内容,也可能还包括程序状态字的内容),这一定是用中断隐指令(纯硬件机制)实现的。
(3)判别中断源,找到中断服务程序的入口地址。
(4)执行一条开中断指令,以便尽快地进入可以响应更高级别中断请求的运行状态。
(5)若有更高级别的中断请求来到,则可以进入新的中断响应过程,否则执行中断服务程序。
(6)执行完中断服务程序就要准备返回主程序,为此,执行关中断。
(7)恢复现场信息。
(8)执行开中断。这里的关中断和开中断是为了保证能完整地恢复现场的操作。
(9)开中断之后,若有更高级别的中断请求到来,则可以进入新的中断响应过程,否则,返回断点,进入主程序的执行过程。