ARM指令集
数据操作
ARM指令的种类
- 数据处理指令
- 程序状态寄存器与通用寄存器之间的传送指令
- Load/Store指令
- 转移指令
- 异常中断指令
- 协处理器指令
数据处理指令分为6类
- 数据传送指令
- 算术运算指令
- 逻辑运算指令
- 比较指令
- 测试指令
- 乘法指令
数据处理指令只能对寄存器的内容进行操作,而不能对内存中的数据进行操作。
所有ARM数据处理指令均可选择使用S后缀,并影响状态标志。
ARM数据处理指令——数据传送
助记符 | 说明 | 操作 | 条件码位置 |
---|---|---|---|
MOV Rd, operand2 | 数据传送 | Rd<-operand2 | MOV {cond} {S} |
MVN Rd, operand2 | 数据非传送 | Rd<-(~operand2) | MVN {cond} {S} |
MOV指令将8位图立即数或寄存器传送到目标寄存器(Rd),可用于移位运算等操作,指令格式如下:
MOV {cond} {S} Rd,operand2
MOV指令举例如下:
MOV R1,#0x10 ;R1=0x10
MOV R0,R1 ;R0=R1
MOVS R3,R1,LS