简述ARM异常中断的响应过程及异常返回的流程
正确答案:1、异常中断响应过程:
(1)在相应的链接寄存器LR (r14)中保存下一条指令的地址;
(2)保存当前的CPSR值,即将CPSR复制到新的异常模式的SPSR;
(3)强制使CPSR模式位置成对应异常类型的值:根据异常类型,重新设置CPSR的运行模式位CPSR[4:0],使微处理器进入相应的工作模式;
(4)强制给PC赋值,将相应的向量地址赋给PC,从而跳转到相应的异常处理程序处执行程序;
(5)设置CPSR中的中断禁止位,以禁止中断发生。
2、异常返回流程:
(1)由链接寄存器LR的值恢复PC,返回到发生异常中断的指令的下一条指令处执行程序;
(2)将SPSR复制回CPSR中;
(3)若在进入异常处理时设置了中断禁止位,要在此清除。
(1)在相应的链接寄存器LR (r14)中保存下一条指令的地址;
(2)保存当前的CPSR值,即将CPSR复制到新的异常模式的SPSR;
(3)强制使CPSR模式位置成对应异常类型的值:根据异常类型,重新设置CPSR的运行模式位CPSR[4:0],使微处理器进入相应的工作模式;
(4)强制给PC赋值,将相应的向量地址赋给PC,从而跳转到相应的异常处理程序处执行程序;
(5)设置CPSR中的中断禁止位,以禁止中断发生。
2、异常返回流程:
(1)由链接寄存器LR的值恢复PC,返回到发生异常中断的指令的下一条指令处执行程序;
(2)将SPSR复制回CPSR中;
(3)若在进入异常处理时设置了中断禁止位,要在此清除。
答案解析:有
微信扫一扫手机做题