arm微处理器编程模型
1、 在异常发生后,ARM9内核会作以下工作:
a) 在LR中保存当前执行指令的下一条指令地址,即LR=PC-4,保存到对应模式下的LR寄存器中;
b) 将CPSR复制到对应模式的SPSR中;
c) 将CPSR模式位强制设置为与异常类型相对应的值;
d) 强制PC从相应的异常向量处取值;
e) ARM9内核在处理中断异常时置位中断禁止标志,这样可以防止不受控制的异常嵌套
2、 当异常结束时,异常处理程序必须:
a) 将LR(R14)中的值减去偏移量后存入PC,偏移量根据异常的类型而有所不同;
b) 将SPSR的值复制回CPSR
c) 清零在入口置位的中断禁止标志
3、