微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > ARM技术讨论 > 当R15做源寄存器时,它的值是现在指令地址加12,这个谁能解释一下

当R15做源寄存器时,它的值是现在指令地址加12,这个谁能解释一下

时间:10-02 整理:3721RD 点击:

各位同学,最近在看从51到ARM这本书,里面讲到ARM指令集的时候,在指令LDR/STR这一部分时,提到两点说明:
1. 使用R15作为基址寻址时,它的指是目前执行的指令地址加8;
2.当R15做源寄存器时,它的值是现在指令地址加12.
====================
对于第一点,我可以理解,因为这本书是针对ARM7TDMI来讲的,它是3级流水结构,在执行ARM指令(4字节)时,当前指令执行 时刻,取指步骤对应的是第三条指令,所以PC的值是 当前指令地址加8.
但是,重点来了。
对于第二点当R15做源寄存器时,它的值是现在指令地址加12. 确实不知道他说的是什么。
求教了。新手没什么积分,各位见谅。感谢。


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top