ARM的37个通用寄存器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ARM的37个通用寄存器相关的知识,希望对你有一定的参考价值。
ARM中有31个通用寄存器和6个状态寄存器。每一种用户模式都对应到一组寄存器,如下图所示。
R13:
- 也叫做SP,通常用作于堆栈指针,和51单片机中的sp类似,但是R13也可以作为累加器
R14:
- 也叫做LR(链接寄存器),通常用作于保存子程序或中断返回的地址,通常是产生中断或者跳转指令的下一条指令的地址(由于ARM中PC总是当前指令地址+8,所以保存到LR中的地址应该总是PC-4)。51单片机中在调用子程序或者进入中断时是利用堆栈来保存将来要返回的地址的。
R15:
- 也叫做PC,和51单片机中的PC是一样的意思,不过和51单片机不同的是由于ARM采用流水线技术,所以PC总是指向正在取值的指令(ARM7为3级流水线,所以PC的值始终是当前正在执行的指令的地址+8),而单片机的PC总是指向下一条即将被执行的指令的地址。
CPSR:
- 状态寄存器,和51单片机中的PSW寄存器是一样的意思。
以上是关于ARM的37个通用寄存器的主要内容,如果未能解决你的问题,请参考以下文章