LDR指令详解

ARM 191浏览

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

(1)LDR   r0,=name,像这种带等号的是伪指令,而不是ARM指令,LDR 伪指令用于加载立即数或一个地址值到指定寄存器.

*如果name是立即数的话:LDR R0,=0X123;//将0X123存入R0

       *如果name是个标识符:LDR R0,=NAME;//将NAME的地址存入R0

           相当于:

             LDR R0,LABEL;

             LABEL DCB NAME;//分配内存并用NAME初始化(LABEL为内存的起始地址?)

(2)LDR R1,[R0] ;如果没有等号,LDR 指令用于从内存中读取数据放入寄存器中.该指令是 将R0 地址处的数据读出,保存到R1 中(零偏移)。