勵志

勵志人生知識庫

ldr指令是什麼

LDR(Load Store)指令是ARM指令集中用於從存儲器中載入數據到暫存器的指令。它可以有不同的格式和用法,具體取決於運算元的類型和位置。以下是LDR指令的一些常見用法:

基本用法:LDR R0, [R1];將存儲器地址為R1的字數據讀入暫存器R0。

帶立即數的LDR:LDR R0, =0x123;將0x123存入R0。

帶地址標識符的LDR:LDR R0, =NAME;將NAME的地址存入R0,相當於LDR R0, LABEL。

LDR with offset:LDR R0, [R1, #8];將存儲器地址為R1+8的字數據讀入暫存器R0。

LDR with register indices:LDR R0, [R1, R2];將存儲器地址為R1+R2的字數據讀入暫存器R0。

LDR with PC-relative address:LDR R0, [PC, #offset];將PC(程式計數器)加上offset指定的偏移量處的字數據讀入暫存器R0。

LDR with register base:LDR R0, [R1, LSL #3];將存儲器地址為R1*8的字數據讀入暫存器R0。

LDRB指令:LDRB R0, [R1];將存儲器地址中的8位(1個位元組)數據讀入暫存器R0。

LDR指令可以用於載入立即數、地址標識符、暫存器基地址、暫存器偏移地址以及PC-relative地址中的數據。它支持不同的定址模式,包括暫存器定址、立即數定址、暫存器基定址以及PC-relative定址,這使得LDR指令在ARM程式設計中非常靈活和有用。