ARM指令集中,LDR通常都是作加载指令的,但是它也可以作伪指令。

LDR伪指令的形式是“LDR Rn,=expr”。下面举一个例子来说明它的用法。

COUNT EQU       0x40003100

……

LDR       R1,=COUNT

MOV      R0,#0

STR       R0,[R1]

COUNT是我们定义的一个符号,值为0x40003100。

LDR       R1,=COUNT是将COUNT这个符号的值,也就是0x40003100放到R1中。

MOV      R0,#0是将立即数0放到R0中。

STR      R0,[R1]是一个存储指令,将R0中的值放到以R1中的值为地址的存储单元去。实际就是将0放到地址为0x40003100的存储单元中去。可见这三条指令是为了完成对变量COUNT赋值。

05-07 15:29