Professional Documents
Culture Documents
Addressing Modes
Addressing Modes
ARM Assembler
Addressing Modes
Data Processing
Immediate
r0, #12
hop1i IR(value)
ALU hop1i
R0
ALU
MOV
r0, #0x12, 8
Register
hop1i R1
ALU hop1i
R0 ALU
Scaled Values
(<<)
(>>)
(+>>)
(>>>)
(C >>>)
Register
Register
MSB
Register
C
Addressing Modes p. 7/14
Register
Register
Offset Addressing
[Rn, #hvaluei]
[Rn, Rm]
[Rn, Rm, hshifti #hvaluei]
Offset Immediate
Offset Register
Offset scaled
Pre-Index Addressing
[Rn, #hvaluei]!
Pre-Index Immediate
[Rn, Rm]!
Pre-Index Register
[Rn, Rm, hshifti #hvaluei]! Pre-Index scaled
Post-Index Addressing
[Rn], #hvaluei
[Rn], Rm
[Rn], Rm, hshifti #hvaluei
Post-Index Immediate
Post-Index Register
Post-Index scaled
Addressing Modes p. 10/14
R0, [R1], R2
R0, [R1], R2
R0
R0, [R1], R2
R0
R0
R0, [R1], R2
R0
R0
R0
Offset Addressing
[Rn, #hvaluei]
Offset Immediate
[Rn, Rm]
Offset Register
[Rn, Rm, hshifti #hvaluei] Offset scaled
Pre-Index Addressing
[Rn, #hvaluei]!
Pre-Index Immediate
[Rn, Rm]!
Pre-Index Register
[Rn, Rm, hshifti #hvaluei]! Pre-Index scaled
Post-Index Addressing
[Rn], #hvaluei
Post-Index Immediate
[Rn], Rm
Post-Index Register
[Rn], Rm, hshifti #hvaluei Post-Index scaled