ARM汇编中LR(R14)寄存器的作用
来源:互联网 发布:广州成易软件 编辑:程序博客网 时间:2024/05/16 15:44
ARM汇编中LR(R14)寄存器的作用
lr(r14)的作用问题,这个lr一般来说有两个作用:
1.当使用bl或者blx跳转到子过程的时候,r14保存了返回地址,可以在调用过程结尾恢复。
2.异常中断发生时,这个异常模式特定的物理R14被设置成该异常模式将要返回的地址。
另外注意pc,在调试的时候显示的是当前指令地址,而用mov lr,pc的时候lr保存的是此指令向后数两条指令的地址,大家可以试一下用mov pc,pc,结果得到的是跳转两条指令,这个原因是由于arm的流水线造成的,预取两条指令的结果.
一个小例子:程序一次讲48个字数据从R12作为首地址的一段连续的内存单元复制到R13作为首地址的一段连续的内存单元。代码执行前R12为源数据区首地址,R13为目标数据区首地址,R14为源数据区末地址/
。代码loop
LDMIA R12!,(R0-R11)
STMIA R13!,(R0-R11)
CMP R12,R14 ;是否达到源数据结尾
BLO loop ;若没到达源数据结尾
- ARM汇编中lr(r14)寄存器的作用
- ARM汇编中LR(R14)寄存器的作用
- ARM汇编中lr(r14)寄存器的作用
- ARM汇编中lr(r14)寄存器的作用
- ARMlr(r14)寄存器的作用
- LR(R14)寄存器
- ARM寄存器(R13/R14/R15)
- ARM寄存器(R13/R14/R15)
- ARM寄存器(R13/R14/R15)
- ARM中pc、lr寄存器
- LR(R14)
- arm寄存器之r14,r15
- ARM寄存器R13/R14/R15
- 汇编中各寄存器的作用
- 汇编中各寄存器的作用
- 汇编中各寄存器的作用
- 汇编中各寄存器的作用
- 汇编中各寄存器的作用
- [Android]获取屏幕高度和宽度
- SSH本机免登陆密码
- 函数调用参数改变的两种方法——指针与引用
- JVM详解之Java垃圾回收机制详解和调优
- rh401 - rpmbuild更改BuildArch后碰到错误(error: Arch dependent binaries in noarch package)
- ARM汇编中LR(R14)寄存器的作用
- spring之aop
- 3通道滤波
- edit框添加与赋值的两种方法
- poj3006
- 20个经典的Java应用
- spi
- Android完全退出的4种方法
- webservice xfire实现的一个超简单的例子