h1_key

当前位置:首页 >新闻资讯 > 技术文章>ARM微处理器指令集合
ARM微处理器指令集合
2023-04-06 660次



主要介绍ARM微处理器指令集对应的概念,与其一般编码格式,可以为大家提供快速查询的便利,但要注意的是本文整理的是ARMv5TE及以下版本的微处理器,对于更高级的版本,可能会有新的指令出现,所以请注意查看自己使用的ARM处理器型号。

 

  一、跳转指令

  1、B指令——跳转指令

  指令格式:B{条件} 目标地址

  2、BL指令——带返回的跳转指令

  指令格式:BL{条件} 目标地址

  3、BLX指令——带返回和状态切换的跳转指令

  指令格式:BLX 目标地址

  4、BX指令——带状态切换的跳转指令

指令格式:BX{条件} 目标地址

 

  二、数据处理指令

  数据处理分为传输指令、算术逻辑指令和比较指令。

  1、MOV指令——数据传输指令

  指令格式:MOV{条件} {S} 目的寄存器,源操作数

  2、MVN指令——取反传送指令

  指令格式:MVN{条件} {S} 目的寄存器,源操作数

  3、CMP指令——比较指令

  指令格式:CMP{条件} {S} 操作数1,操作数2

  4、CMN指令——反值比较指令

  指令格式:CMN{条件} 操作数1,操作数2

  5、TST指令——位测试指令

  指令格式:TST{条件} 操作数1,操作数2

  6、TEQ指令——相等测试指令

  指令格式:TEQ{条件} 操作数1,操作数2

  7、ADD指令——加法指令

  指令格式:ADD{条件} {S} 目的寄存器,操作数1,操作数2

  8、ADC指令——带进位的加法指令

  指令格式:ADC{条件} {S} 目的寄存器,操作数1,操作数2

  9、SUB指令——减法指令

  指令格式:SUB{条件} {S} 目的寄存器,操作数1,操作数2

  10、SBC指令——带借位的减法指令

  指令格式:SBC{条件} {S} 目的寄存器,操作数1,操作数2

  11、RSB指令——逆向减法指令

  指令格式:RSB{条件} {S} 目的寄存器,操作数1,操作数2

  12、RSC指令——带借位的逆向减法指令

  指令格式:RSC{条件} {S} 目的寄存器,操作数1,操作数2

  13、AND指令——逻辑“与”指令

  指令格式:AND{条件} {S} 目的寄存器,操作数1,操作数2

  14、ORR指令——逻辑“或”指令

  指令格式:ORR{条件} {S} 目的寄存器,操作数1,操作数2

  15、EOR指令——逻辑“异或”指令

  指令格式:EOR{条件} {S} 目的寄存器,操作数1,操作数2

  16、BIC指令——位清除指令

  指令格式:BIC{条件} {S} 目的寄存器,操作数1,操作数2

  

  三、乘法指令与乘加指令

  1、MUL指令——32位乘法指令

  指令格式:MUL{条件} {S} 目的寄存器,操作数1,操作数2

  2、MLA指令——32位乘加指令

  指令格式:MLA{条件} {S} 目的寄存器,操作数1,操作数2,操作数3

  3、SMULL指令——64位有符号数乘法指令

  指令格式:SMULL{条件} {S} 目的寄存器Low,目的寄存器High,操作数1,操作数2

  4、SMLAL指令——64位有符号数乘加指令

  指令格式:SMLAL{条件} {S} 目的寄存器Low,目的寄存器High,操作数1,操作数2

  5、UMULL指令——64位无符号数乘法指令

  指令格式:UMULL{条件} {S} 目的寄存器Low,目的寄存器High,操作数1,操作数2

  6、UMLAL指令——64位无符号数乘加指令

指令格式:UMLAL{条件} {S} 目的寄存器Low,目的寄存器High,操作数1,操作数2

 

  四、程序状态寄存器指令

  1、MRS指令——程序状态寄存器到通用寄存器的数据传输指令

  指令格式:MRS{条件} 通用寄存器,程序状态寄存器(CPSR或SPSR)

  2、MSR指令——通用寄存器到程序状态寄存器的数据传输指令

指令格式:MSR{条件} 程序状态寄存器(CPSR或SPSR)_<域>,操作数

 

  五、加载/存储指令

  1、LDR指令——字数据加载指令

  指令格式:LDR{条件} 目的寄存器,<存储器地址>

  2、LDRB指令——字节数据加载指令

  指令格式:LDR{条件} B 目的寄存器,<存储器地址>

  3、LDRH指令——半字数据加载指令

  指令格式:LDR{条件}H 目的寄存器,<存储器地址>

  4、STR指令——字数据存储指令

  指令格式:STR{条件} 源寄存器,<存储器地址>

  5、STRB指令——字节数据存储指令

  指令格式:STR{条件}B 源寄存器,<存储器地址>

  6、STRH指令——半字数据存储指令

指令格式:STR{条件}H 源寄存器,<存储器地址>

 

  六、批量数据加载/存储指令

  1、LDM指令——批量数据加载指令

  指令格式:LDM{条件} {类型} 基址寄存器{!},寄存器列表{^}

  2、STM指令——批量数据存储指令

指令格式:STM{条件} {类型} 基址寄存器{!},寄存器列表{^}

 

 七、数据交换指令

  1、SWP指令——字数据交换指令

  指令格式:SWP{条件} 目的寄存器,源寄存器1,[源寄存器2]

  2、SWPB指令——字节数据交换指令

  指令格式:SWP{条件}B 目的寄存器,源寄存器1,[源寄存器2]

  八、移位指令

  1、LSL指令——对通用寄存器中的内容进行逻辑左移操作

  指令格式:通用寄存器,LSL 操作数

  2、ASL指令——对通用寄存器中的内容进行算术左移操作

  指令格式:通用寄存器,ASL 操作数

  3、LSR指令——对通用寄存器中的内容进行逻辑右移操作

  指令格式:通用寄存器,LSR 操作数

  4、ASR指令——对通用寄存器中的内容进行算术右移操作

  指令格式:通用寄存器,ASR 操作数

  5、ROR指令——对通用寄存器中的内容进行循环右移操作

  指令格式:通用寄存器,ROR 操作数

  6、RRX指令——对通用寄存器中的内容进行带扩展的循环右移操作

  指令格式:通用寄存器,RRX 操作数

 

  九、协处理器指令

  1、CDP指令——ARM处理器通知ARM协处理器执行特定的操作,若协处理器不能成功完成特定操作,则产生未定义指令异常

  指令格式:CDP{条件}协处理器编码,协处理器操作码1,目的寄存器,源寄存器1,寄存器2,协处理器操作码2

  2、LDC指令——将源寄存器所指向的存储器中的字数据传送到目的寄存器中,若协处理器不能成功完成传送操作,则产生未定义指令异常。

  指令格式:LDC{条件} {L} 协处理器编码,目的寄存器,[源寄存器]

  3、STC指令——将源寄存器中的字数据传送到目的寄存器所指向的存储器中,若协处理器不能成功完成传送操作,则产生未定义指令异常。

  指令格式:STC{条件} {L} 协处理器编码,源寄存器,[目的寄存器]

  4、MCR指令——将ARM处理器寄存器中的数据传送到协处理器寄存器中,若协处理器不能完成此操作,则产生未定义指令异常。

  指令格式:MCR{条件}协处理器编码,协处理器操作码1,源寄存器,目的寄存器1,目的寄存器2,协处理器操作码2

  5、MRC指令——将协处理器寄存器中的数据传送到ARM处理器寄存器中,若协处理器不能成功完成操作,则产生未定义指令异常。

指令格式:MRC{条件}协处理器编码,协处理器操作码1,目的寄存器,源寄存器1,源寄存器2,协处理器操作码2

 

  十、异常中断指令

  1、SWI指令——软件中断指令

  指令格式:SWI{条件}24位的立即数

  2、BKPT指令——断点中断指令

  指令格式:BKPT 16位的立即数

 

  • 一文读懂什么是IMU传感器?
  • IMU(惯性测量单元,Inertial Measurement Unit) 是一种用于测量物体运动状态的电子设备,通过组合多种传感器来提供三维空间中的加速度、角速度及姿态信息。
    2025-03-05 489次
  • 一文读懂什么是图像传感器?
  • 图像传感器是一种将光学图像转换为电信号的电子器件,广泛应用于数码相机、智能手机、安防监控、医疗影像、自动驾驶等领域。它是现代成像系统的核心组件,决定了图像的清晰度、色彩还原能力和动态范围等关键性能。
    2025-03-03 106次
  • 一文读懂什么是加速度传感器?
  • 加速度传感器(Accelerometer) 是一种测量物体线性加速度的装置,可检测物体在空间中沿X、Y、Z轴的平移运动(包括静态重力加速度和动态运动加速度)。
    2025-02-26 208次
  • XILINX赛灵思 XC7K160T-2FBG484E
  • 赛灵思(XILINX)作为行业的领军企业,其推出的 XC7K160T-2FBG484E 更是一款备受瞩目的产品。XC7K160T-2FBG484E 属于赛灵思 7 系列 FPGA(现场可编程门阵列),具有强大的性能和丰富的功能。
    2024-09-25 366次
  • XILINX赛灵思 XCKU085-2FLVA1517E
  • 赛灵思(XILINX)作为全球领先的可编程逻辑器件供应商,其推出的 XCKU085-2FLVA1517E 以卓越的性能和丰富的功能,成为众多电子工程师和设计师的首选。XCKU085-2FLVA1517E 属于赛灵思 UltraScale 架构系列产品,采用先进的 20 纳米工艺技术制造。这一工艺不仅带来了更高的性能,还实现了更低的功耗,为各种复杂的电子系统设计提供了理想的解决方案。
    2024-09-25 318次

    万联芯微信公众号

    元器件现货+BOM配单+PCBA制造平台
    关注公众号,优惠活动早知道!
    10s
    温馨提示:
    订单商品问题请移至我的售后服务提交售后申请,其他需投诉问题可移至我的投诉提交,我们将在第一时间给您答复
    返回顶部