SAM3X8E Atmel Corporation, SAM3X8E Datasheet - Page 106

no-image

SAM3X8E

Manufacturer Part Number
SAM3X8E
Description
Manufacturer
Atmel Corporation
Datasheets
11.12.6
11.12.6.1
11.12.6.2
106
106
SAM3X/A
SAM3X/A
LDM and STM
Syntax
Operation
Load and Store Multiple registers.
where:
op
addr_mode
cond
Rn
!
reglist
contain register ranges. It must be comma separated if it contains more than one register or reg-
ister range, see
LDM and LDMFD are synonyms for LDMIA. LDMFD refers to its use for popping data from Full
Descending stacks.
LDMEA is a synonym for LDMDB, and refers to its use for popping data from Empty Ascending
stacks.
STM and STMEA are synonyms for STMIA. STMEA refers to its use for pushing data onto
Empty Ascending stacks.
STMFD is s synonym for STMDB, and refers to its use for pushing data onto Full Descending
stacks
LDM instructions load the registers in reglist with word values from memory addresses based on
Rn.
STM instructions store the word values in the registers in reglist to memory addresses based on
Rn.
For LDM, LDMIA, LDMFD, STM, STMIA, and STMEA the memory addresses used for the
accesses are at 4-byte intervals ranging from Rn to Rn + 4 * (n-1), where n is the number of reg-
isters in reglist. The accesses happens in order of increasing register numbers, with the lowest
numbered register using the lowest memory address and the highest number register using the
highest memory address. If the writeback suffix is specified, the value of Rn + 4 * (n-1) is written
back to Rn.
For LDMDB, LDMEA, STMDB, and STMFD the memory addresses used for the accesses are at
4-byte intervals ranging from Rn to Rn - 4 * (n-1), where n is the number of registers in reglist.
op{addr_mode}{cond} Rn{!}, reglist
LDM
STM
IA
DB
If ! is present the final address, that is loaded from or stored to, is written back into Rn.
is one of:
Load Multiple registers.
Store Multiple registers.
is any one of the following:
Increment address After each access. This is the default.
Decrement address Before each access.
is an optional condition code, see
is the register on which the memory addresses are based.
is an optional writeback suffix.
is a list of one or more registers to be loaded or stored, enclosed in braces. It can
“Examples” on page
107.
“Conditional execution” on page
11057A–ATARM–17-Feb-12
11057A–ATARM–17-Feb-12
96.

Related parts for SAM3X8E