
DR
AFT
DR
AFT
DRAFT
DR
D
RAFT
DRAFT
DRA
FT DRAF
D
RAFT DRAFT DRAFT DRAFT DRAFT D
DRAFT
D
RAFT DRA
FT DRAFT DRAFT DRAFT DRA
UM10360_0
© NXP B.V. 2009. All rights reserved.
User manual
Rev. 00.06 — 5 June 2009
631 of 808
NXP Semiconductors
UM10360
Chapter 34: Appendix: Cortex-M3 User Guide
2.4.2 LDR and STR, immediate offset
Load and Store with immediate offset, pre-indexed immediate offset, or post-indexed
immediate offset.
2.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
op
D{
cond
}
Rt
,
Rt2
, [
Rn
{, #
offset
}]
; immediate offset, two words
op
D{
cond
}
Rt
,
Rt2
, [
Rn
, #
offset
]!
; pre-indexed, two words
op
D{
cond
}
Rt
,
Rt2
, [
Rn
], #
offset
; post-indexed, two words
where:
op
is one of:
LDR
: Load register.
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
Section 34–2.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.
2.4.2.2
Operation
LDR
instructions load one or two registers with a value from memory.
STR
instructions store one or two register values to memory.
Load and store instructions with immediate offset can use the following addressing
modes:
•
Offset addressing
The offset value is added to or subtracted from the address obtained from the register
Rn
. The result is used as the address for the memory access. The register
Rn
is
unaltered. The assembly language syntax for this mode is: