2.6.4.2.1 Syntax
op{type}{cond} Rt, [Rn {, #offset}] ; immediate offset
op{type}{cond} Rt, [Rn, #offset]! ; pre-indexed
op{type}{cond} Rt, [Rn], #offset ; post-indexed
opD{cond} Rt, Rt2, [Rn {, #offset}] ; immediate offset, two words
opD{cond} Rt, Rt2, [Rn, #offset]! ; pre-indexed, two words
opD{cond} Rt, Rt2, [Rn], #offset ; post-indexed, two words
where:
- op is either LDR (load register) or STR (store register)
- type is one of:
- B: unsigned byte, zero extend to 32 bits on loads.
- SB: signed byte, sign extend to 32 bits (LDR only).
- H: unsigned halfword, zero extend to 32 bits on loads.
- SH: signed halfword, sign extend to 32 bits (LDR only).
- -: omit, for word.
- cond is an optional condition code; see 2.6.3.7 Conditional Execution.
- Rt is the register to load or store.
- Rn is the register on which the memory address is based.
- offset is an offset from Rn. If offset is omitted, the address is the contents of Rn.
- Rt2 is the additional register to load or store for two-word operations.