ARM - 指令集

文章参考: 

https://baike.baidu.com/item/ARM%E6%8C%87%E4%BB%A4%E9%9B%86/907786?fr=aladdin

https://blog.csdn.net/u013477200/article/details/50723555

https://blog.csdn.net/dddxxxx/article/details/47130545

        ARM指令集是指计算机ARM操作指令系统。在ARM中有两种方式可以实现程序的跳转:一种是跳转指令;另一种是直接向PC寄存器(R15)中写入目标地址值。

        ARM指令集可以分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、加载/存储指令、协处理器指令和异常产生指令六大类。


ARM指令表 

ADC

带进位的32位数加法

ADD

32位数相加

AND

32位数的逻辑与

B

在32M空间内的相对跳转指令

BEQ相等则跳转(Branch if EQual)
BNE不相等则跳转(Branch if Not Equal)
BGE大于或等于跳转(Branch if Greater than or Equa)
BGT大于跳转(Branch if Greater Than)

BIC

32位数的逻辑位清零

BKPT

断点指令

BL

带链接的相对跳转指令

BLE小于或等于跳转(Branch if Less than or Equal)
BLEQ带链接等于跳转(Branch with Link if EQual)
BLLT带链接小于跳转(Branch with Link if Less Than)
BLT小于跳转(Branch if Less Than)

BLX

带链接的切换跳转

BX

切换跳转

CDP CDP2

协处理器数据处理操作

CLZ

零计数

CMN

比较两个数的相反数

CMP

32位数比较

EOR

32位逻辑异或

LDC LDC2

从协处理器取一个或多个32位值

LDM

从内存送多个32位字到ARM寄存器

LDR

从虚拟地址取一个单个的32位值

MCR MCR2 MCRR

从寄存器送数据到协处理器

MLA

32位乘累加

MOV

传送一个32位数到寄存器

MRC MRC2 MRRC

从协处理器传送数据到寄存器

MRS

把状态寄存器的值送到通用寄存器

MSR

把通用寄存器的值传送到状态寄存器

MUL

32位乘

MVN

把一个32位数的逻辑“非”送到寄存器

ORR

32位逻辑或

PLD

预装载提示指令

QADD

有符号32位饱和加

QDADD

有符号双32位饱和加

QSUB

有符号32位饱和减

QDSUB

有符号双32位饱和减

RSB

逆向32位减法

RSC

带进位的逆向32法减法

SBC

带进位的32位减法

SMLAxy

有符号乘累加(16位*16位)+32位=32位

SMLAL

64位有符号乘累加((32位*32位)+64位=64位)

SMALxy

64位有符号乘累加((32位*32位)+64位=64位)

SMLAWy

号乘累加((32位*16位)>>16位)+32位=32位

SMULL

64位有符号乘累加(32位*32位)=64位

SMULxy

有符号乘(16位*16位=32位)

SMULWy

有符号乘(32位*16位>>16位=32位)

STC STC2

从协处理器中把一个或多个32位值存到内存

STM

把多个32位的寄存器值存放到内存

STR

把寄存器的值存到一个内存的虚地址内间

SUB

32位减法

SWI

软中断

SWP

把一个字或者一个字节和一个寄存器值交换

TEQ

等值测试

TST

位测试

UMLAL

64位无符号乘累加((32位*32位)+64位=64位)

UMULL

64位无符号乘累加(32位*32位)=64位

 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Steven&Aileen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值