• ARM指令英文全称-速记ARM指令


    通过英文全称,了解ARM指令代表的含义,可以快速记住所有ARM指令。我的一些表述,可能存在语法错误,不过不重要,我们的目的是理解。

    每个指令用法的详解可以看这篇文章http://t.csdn.cn/mxd6H

    本文不详解ARM指令用法,只对指令命名说一说自己的理解。

    1. ARM 存储器访问指令

    1.1 LDR 和STR 加载/存储字和无符号字节指令

    LDR load from register to memory—所以指令后接寄存器,再接内存地址LDR Rd,<地址>

    STR store  register to memory—所以指令后接寄存器,再接内存地址STR Rd,<地址>;

    1.2 LDM和STM 批量加载/存储指令

    LDM load from memory to register—所以指令后接内存地址,再接寄存器LDM Rn,reglist{^}

    STM store  memory to register—所以指令后接内存地址,再接寄存器STM Rn,reglist{^}

    寄存器Rn 为基址寄存器,装有传送数据的初始地址

    (1) IA:每次传送后地址加4 increase after

    (2) IB:每次传送前地址加4 increase before

    (3) DA:每次传送后地址减4 decrease after

    (4) DB:每次传送前地址减4 decrease before

    (5) FD:满递减堆栈 Full descending

    (6) ED:空递减堆栈 Empty descending

    (7) FA:满递增堆栈 Full ascending

    (8) EA:空递增堆栈 Empty ascending

    1.3 SWP 寄存器和存储器交换指令

    SWP swap

    2.  ARM 数据处理指令

    2.1数据传送指令

    2.1.1 MOV 数据传送指令

    MOV move

    2.1.2 MVN 数据非传送指令

    MVN move and NOT

    2.2算术逻辑运算指令

    2.2.1 ADD 加法运算指令

    ADD add

    2.2.2 SUB 减法运算指令

    SUB subtract

    2.2.3 RSB 逆向减法指令

    RSB reverse subtract

    2.2.4 ADC 带进位加法指令

    ADC add with carry

    2.2.5 SBC 带进位减法指令

    SBC subtract with carry

    2.2.6 RSC 带进位逆向减法指令

    RSC reverse subtract with carry

    2.2.7 AND 逻辑与操作指令

    AND and

    2.2.8 ORR 逻辑或操作指令

    ORR or

    2.2.9 EOR 逻辑异或操作指令

    EOR exclusive or

    2.2.10 BIC 位清除指令

    BIC bitwise clear

    2.3 比较指令

    2.3.1 CMP 比较指令

    CMP compare

    2.3.2 CMN 负数比较指令

    CMN compare nagative

    2.3.3 TST 位测试指令

    TST test

    2.3.4 TEQ 相等测试指令

    2.4 乘法指令

    2.4.1 MUL 32 位乘法指令

    MUL multiply

    2.4.2 MLA 32 位乘加指令

    MLA  multiply and add

    2.4.3 UMULL  64 位无符号乘法指令

    UMULL unsigned multiply

    2.4.4 UMLAL 64 位无符号乘加指令

    UMLAL unsigned multiply and add

    2.4.5 SMULL 64 位有符号乘法指令

    SMULL signed multiply

    2.4.6 SMLAL 64 位有符号乘加指令

    SMLAL signed multiply and add

    3.   ARM 跳转指令

    3.1 B 跳转指令

    B branch

    3.2 BL 带链接的跳转指令

    BL branch with link

    3.3 BX 带状态切换的跳转指令

    BX brach and exchange

    3.4 BLX

    4.  ARM 协处理器指令

    4.1 CDP 协处理器数据操作指令

    CDP coprocessor data process

    4.2 LDC 协处理器数据读取指令

    LDC load data from coprocessor

    4.3 STC 协处理器数据写入指令

    LDC store data to coprocessor

    4.4 MCR  ARM寄存器到协处理器寄存器的数据传送指令

    move data to coprocessor from register

    4.5 MRC 协处理器寄存器到ARM寄存器到的数据传送指令

    move data to register from coprocessor

    5.  ARM 杂项指令

    5.1 SWI 软中断指令

    SWI software interrupt

    5.2 MRS 读状态寄存器指令

    move data to register from status register

    5.3 MSR 写状态寄存器指令

    move data to status register from register
     

  • 相关阅读:
    【ES专题】ElasticSearch搜索进阶
    算法合集(1)——二分查找
    程序员写不写注释?
    字节跳动 DanceCC 工具链系列之Xcode LLDB耗时监控统计方案
    ChatGPT 学习笔记 | 什么是 Prompt-tuning?
    无锅一身轻,IT资产账号密码就该这么管理
    网络代理工具软件Proxyman mac中文版功能特点
    PYQT Pushbutton 右键菜单
    客户案例 | 举重若轻,低代码培育核心业务能力工坊
    自学 TypeScript 第五天,手把手项目搭建 TS 篇
  • 原文地址:https://blog.csdn.net/freestep96/article/details/126458933