3 ldr and str, doublewords – ARM VERSION 1.2 User Manual

Page 125

Advertising
background image

ARM Instruction Reference

ARM DUI 0068B

Copyright © 2000, 2001 ARM Limited. All rights reserved.

4-15

4.2.3

LDR and STR, doublewords

Load two consecutive registers and store two consecutive registers, 64-bit doubleword.

Syntax

These instructions have four possible forms:

zero offset

pre-indexed offset

program-relative

post-indexed offset.

The syntax of the four forms are, in the same order:

op{cond}D Rd, [Rn]

op{cond}D Rd, [Rn, Offset]{!}

op{cond}D Rd, label

op{cond}D Rd, [Rn], Offset

where:

op

is either

LDR

or

STR

.

cond

is an optional condition code (see Conditional execution on page 4-4).

Rd

is one of the ARM registers to load or save. The other one is

R(d+1)

.

Rd

must be an even numbered register, and not

r14

.

Rn

is the register on which the memory address is based.

Rn

must not be the same as

Rd

or

R(d+1)

, unless the instruction is either:

zero offset

pre-indexed without writeback.

Offset

is an offset applied to the value in

Rn

(see Offset syntax on page 4-16).

label

is a program-relative expression. See Register-relative and
program-relative expressions
on page 3-23 for m
ore information.

label

must be within

±252 bytes of the current instruction.

!

is an optional suffix. If ! is present, the final address including the offset
is written back into

Rn

.

Advertising