“当发生中断时,处理器通过暂停其当前活动,保存其状态并执行称为中断处理程序的函数来响应”
问题是处理器保存当前地址的位置 在执行中断处理程序后恢复它的活动?
答案 0 :(得分:1)
这取决于您所关注的架构。但通常处理器本身会在中断时将当前程序计数器推入当前堆栈。然后,中断的返回将获取那些堆叠的PC信息并返回到正常的程序流程。例如。将PC推向堆栈的架构:Atmel AVR,ARM Cortex-M,PowerPC。
Atmel AVR:http://www.atmel.com/webdoc/avrassembler/avrassembler.wb_RETI.html
ARM Cortex-M:http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0552a/Babefdjc.html
答案 1 :(得分:0)
严重依赖于架构。 我想到了几种方法(我确信还有更多方法):