ARM指令

目录

1.指令格式

2.条件(cond字段)

3.指令助记符

4.寄存器


1.指令格式

基本格式

     <opcode>{<cond>}{S} <Rd>,<Rn>{,<opcode2>}  一共6部分

       其中,<>内的项是必须的,{}内的项是可选的,如<opcode>是指令助记符,是必须的,而{<cond>}为指令执行条件,是可选的,如果不写则使用默认条件AL(无条件执行)。

       opcode  指令助记符,如LDR,STR 等

       cond  执行条件,如EQ,NE 等

       S  是否影响CPSR 寄存器的值,书写时影响CPSR,否则不影响

       Rd  目标寄存器

       Rn  第一个操作数的寄存器

       operand2  第二个操作数

2.条件(cond字段)

  

3.指令助记符

ADC 带进位的加法指令
ADD 加法指令
AND 逻辑与指令
B 跳转指令
BIC 位清零指令
BL 带返回的跳转指令
BLX 带返回和状态切换的跳转指令
BX 带状态切换的跳转指令

CDP 协处理器数据操作指令
CMN 比较反值指令
CMP 比较指令
EOR 异或指令
LDC 存储器到协处理器的数据传输指令
LDM 加载多个寄存器指令
LDR 存储器到寄存器的数据传输指令
MCR 从ARM寄存器到协处理器寄存器的数据传输指令
MLA 乘加运算指令
MOV 数据传送指令
MRC 从协处理器寄存器到ARM寄存器的数据传输指令
MRS 传送CPSR或SPSR的内容到通用寄存器指令
MSR 传送通用寄存器到CPSR或SPSR的指令
MUL 32位乘法指令
MLA 32位乘加指令

MVN 数据取反传送指令
ORR 逻辑或指令
RSB 逆向减法指令
RSC 带借位的逆向减法指令
SBC 带借位减法指令
STC 协处理器寄存器写入存储器指令
STM 批量内存字写入指令
STR 寄存器到存储器的数据传输指令
SUB 减法指令
SWI 软件中断指令
SWP 交换指令
TEQ 相等测试指令
TST 位测试指令

详细使用方法可以看下面阿里社区的博客:

【ARM】常用指令集-阿里云开发者社区 (aliyun.com)

4.寄存器

 对于这些寄存器介绍可以看看下面这个博客,介绍寄存器不是这里的重点,这里主要是先介绍一下指令。

ARM寄存器_@seven@的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值