一般ARM指令的助记符格式为:
<opcode>{<cond>} {S} <Rd>,<Rn>,<op2>
2. <opcode>是操作码,如ADD表示算术加操作指令。
3. {<cond>} 决定指令执行的条件域。
4. {S}是决定指令执行是否影响CPSR寄存器的值。
5. <Rd>是目的寄存器。
6. <Rn>是第一个操作数,为寄存器。
7. <op2_operand>是第二个操作数。
二、 条件域<cond>
cond | CPSR中标志位 | 含 义 |
EQ | Z置位 | 相等 |
NE | Z清零 | 不相等 |
CS | C置位 | 无符号数大于或等于 |
CC | C清零 | 无符号数小于 |
MI | N置位 | 负数 |
PL | N清零 | 正数或零 |
VS | V置位 | 溢出 |
VC | V清零 | 未溢出 |
HI | C置位Z清零 | 无符号数大于 |
LS | C清零Z置位 | 无符号数小于或等于 |
GE | N等于V | 带符号数大于或等于 |
LT | N不等于V | 带符号数小于 |
GT | Z清零且N等于V | 带符号数大于 |
LE | Z置位或N不等于V | 带符号数小于或等于 |
AL | 忽略 | 无条件执行 |
1.立即数寻址
2.寄存器寻址
3.寄存器移位寻址
4.寄存器间接寻址
5.基址变址寻址
6.相对寻址
7.多寄存器寻址
8.块拷贝寻址
9.堆栈寻址