刚开始接触uboot的时候,就一直对ldr指令很迷惑,因为这个指令有两层用法,一个是加载,一个是伪指令。今天闲着没事就来说一下这两个之间的区别。
LDR伪指令的形式是“LDR Rn,=expr”。
LDR加载指令形式是“LDR Rn,COUNT”
其实也简单区分,“LDR Rn,=expr”是指把expr这个符号所在的地址赋值给Rn,“LDR Rn,COUNT”是指把地址为COUNT里面的内容赋值给Rn。
举个例子:
COUNT EQU 0x56000000
LDR R1,=COUNT
就是把地址0x56000000赋值给R1
COUNT EQU 0x56000000
LDR R1,COUNT
就是把地址0x56000000里面的内容赋值给R1