名字 功能
ADC 带进位加法
ADD 加法
ADDW 宽加法(可以加12 位立即数)
AND 按位与(原文是逻辑与,有误——译注)
ASR 算术右移
BIC 位清零(把一个数按位取反后,与另一个数逻辑与)
BFC 位段清零
BFI 位段插入
CMN 负向比较(把一个数和另一个数的二进制补码比较,并更新标志位)
CMP 比较两个数并更新标志位
CLZ 计算前导零的数目
EOR 按位异或
LSL 逻辑左移
LSR 逻辑右移
MLA 乘加
MLS 乘减
MOVW 把16 位立即数放到寄存器的底16 位,高16 位清0
MOV 加载16 位立即数到寄存器(其实汇编器会产生MOVW——译注)
MOVT 把16 位立即数放到寄存器的高16 位,低16 位不影响
MVN 移动一个数的补码
MUL 乘法
ORR 按位或(原文为逻辑或,有误——译注)
ORN 把源操作数按位取反后,再执行按位或(原文为逻辑或,有误——译注)
RBIT 位反转(把一个32 位整数先用2 进制表达,再旋转180 度——译注)
REV 对一个32 位整数做按字节反转
REVH/
REV16
对一个32 位整数的高低半字都执行字节反转
REVSH 对一个32 位整数的低半字执行字节反转,再带符号扩展成32 位数
ROR 圆圈右移
RRX 带进位的逻辑右移一格(最高位用C 填充,且不影响C 的值——译注)
SFBX 从一个32 位整数中提取任意的位段,并且带符号扩展成32 位整数
SDIV 带符号除法
SMLAL 带符号长乘加(两个带符号的32 位整数相乘得到64 位的带符号积,再把积加到另一
个带符号64 位整数中)
SMULL 带符号长乘法(两个带符号的32 位整数相乘得到64 位的带符号积)
SSAT 带符号的饱和运算
SBC 带借位的减法
SUB 减法
SUBW 宽减法,可以减12 位立即数
SXTB 字节带符号扩展到32 位数
TEQ 测试是否相等(对两个数执行异或,更新标志但不存储结果)
TST 测试(对两个数执行按位与,更新Z 标志但不存储结果)
UBFX 无符号位段提取
UDIV 无符号除法
UMLAL 无符号长乘加(两个无符号的32 位整数相乘得到64 位的无符号积,再把积加到另一
个无符号64 位整数中)
UMULL 无符号长乘法(两个无符号的32 位整数相乘得到64 位的无符号积)
USAT 无符号饱和操作(但是源操作数是带符号的——译注)
UXTB 字节被无符号扩展到32 位(高24 位清0——译注)
UXTH 半字被无符号扩展到32 位(高16 位清0——译注)
文章评论(0条评论)
登录后参与讨论