Introduction
ARM DDI 0210C Copyright © 2001, 2004 ARM Limited. All rights reserved. 1-21
Figure 1-6 Thumb instruction set formats
Format
Format
Move shifted register
Move, compare, add, and subtract
immediate
ALU operation
High register operations and branch
exchange
PC-relative load
Load and store with relative offset
Load and store sign-extended byte and
halfword
Load and store with immediate offset
Load and store halfword
SP-relative load and store
Load address
Add offset to stack pointer
Push and pop registers
Multiple load and store
Add and subtract
Conditional branch
Software interrupt
Unconditional branch
Long branch with link
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Rd
RdRb
Rb
Op
0 0 1
H1 H2
0 1 0 0 0 0
0 1 0 0 1
Ro1 L B 0
Offset8
Op
Word8
Rd
Rn/
offset3
RdRsOp000 111
RdOp
RdRs
RdHdRs/Hs0 1 0 0 0 1
0 1 0
RdRbRo1 H S 10 1 0
Offset5B L0 1 1
Rb RdOffset50 L1 0 0
Rd Word81 L1 0 0
Rd Word80 SP1 0 1
SWord70 0 0 S1 1 01 0
Rlist1 0 R1 1 L1 0
RlistRb0 0 L1 1
Softset8Cond0 11 1
Value81 1 1 11 0 11
Offset1101 1 01
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
03
04
06
02
05
07
08
09
10
11
12
13
14
15
16
17
18
19 OffsetH1 1 11
Offset5 RdRsOp00001