2.6.4.3.1 Syntax

op{type}{cond} Rt, [Rn, Rm {, LSL #n}]

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 Conditional Execution.
  • Rt is the register to load or store.
  • Rn is the register on which the memory address is based.
  • Rm is a register containing a value to be used as the offset.
  • LSL #n is an optional shift, with n in the range 0 to 3.