学习总结之ARM处理器的运行模式及ARM寄存器
Posted lilto
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习总结之ARM处理器的运行模式及ARM寄存器相关的知识,希望对你有一定的参考价值。
1 ARM处理器的运行模式
?
ARM处理器不同模式间的切换:
1 在特权级的运行模式下,可以通过修改程序状态寄存器CPSR的模式控制位,切换运行模式。
2 通过外部中断或者异常处理过程进行运行模式切换。
注意,用户模式下,不能直接进行处理器模式的切换,需要通过产生异常处理,在异常处理过程中,进行处理器运行模式的切换。
?
2 ARM寄存器
?
?
未备份寄存器:模式间共用。
备份寄存器:某模式下专有。
?
对程序计数器PC的值的理解:
PC指向对于读取级的指令地址,而不是处于执行级的指令地址,根据流水线深度的的不同,相对于当前指令地址,PC的偏移量也不相同。下面以ARM架构,3级流水线为例说明:
?
ARM指令占据的空间为4个字节,因此在执行MOV指令时,
PC值 = 当前执行级指令地址 + 8
以上是关于学习总结之ARM处理器的运行模式及ARM寄存器的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向ARM CPU 架构体系 ( ARM 处理器工作模式 | ARM 架构模型 )