ARM中链接寄存器LR和指令寄存器IR的关系

2014-11-24 09:15:06 · 作者: · 浏览: 0

ARM中LR存储的是PC的值,IR存储的是下一条将要执行的指令,有什么区别?


先看定义:


(1)PC是程序计数器,存储将要执行的指令地址


(2)LR是链接寄存器,是ARM处理器中一个有特殊用途的寄存器,当调用函数时,返回地址即PC的值被保存到LR中(mov lr,pc)。


(3)IR是指令寄存器,用来保存当前正在执行的一条指令。当执行一条指令时,先把它从内存取到数据寄存器(DR)中(有的书上叫做缓冲寄存器,BR),然后再传送至IR。


说白了,LR存的是指令地址,IR存的是指令内容。