• 4 ARM微微控制器的指令集


    书籍下载地址(复制到下载工具进行下载):

    https://files.cnblogs.com/wenziqi/ARMCortex-M0原理与应用实践.part1.rar

    https://files.cnblogs.com/wenziqi/ARMCortex-M0原理与应用实践.part2.rar

     

    注:书籍内容会不定期进行更新!

     

     

    4.1 ARM微控制器的指令的分类与格式

        ARM微控制器的指令集是加载/存储型的,也即指令集仅能处理寄存器中的数据,而且处理结果都要放回寄存器中,而对系统存储器的访问则需要通过专门的加载/存储指令来完成,每个指令都有相对应的机器码。

        ARM微控制器的指令集可以分为跳转指令、数据处理指令、程序状态寄存器(PSR)处理指令、加载/存储指令、协微控制器指令和异常产生指令六大类,具体的指令及功能如下表所示(表中指令为基本ARM指令,不包括派生的ARM指令)。

         表4.1-1    ARM指令及功能描述表

    ADC 

    带进位加法指令

    ADD

    加法指令

    AND

    逻辑与指令

    B

    跳转指令

    BIC

    位清零指令

    BL

    带返回的跳转指令

    BLX

    带返回和状态切换的跳转指令

    BX

    带状态切换的跳转指令

    CDP

    协微控制器数据操作指令

    CMN

    比较反值指令

    CMP

    比较指令

    EOR

    异或指令

    LDC

    存储器到协微控制器的数据传输指令

    LDM

    加载多个寄存器指令

    LDR

    存储器到寄存器的数据传输指令

    MCR

    ARM寄存器到协微控制器寄存器的数据传输指令

    MLA

    乘加运算指令

    MOV

    数据传送指令

    MRC

    从协微控制器寄存器到ARM寄存器的数据传输指令

    MRS

    传送CPSRSPSR的内容到通用寄存器指令

    MSR

    传送通用寄存器到CPSRSPSR的指令

    MUL

    32位乘法指令   

    MLA

    32位乘加指令

    MVN

    数据取反传送指令

    ORR

    逻辑或指令

    RSB

    逆向减法指令

    RSC

    带借位的逆向减法指令

    SBC

    带借位减法指令

    STC

    协微控制器寄存器写入存储器指令

    STM

    批量内存字写入指令

    STR

    寄存器到存储器的数据传输指令

    SUB

    减法指令

    SWI

    软件中断指令

    SWP

    交换指令

    TEQ

    相等测试指令

    TST

    位测试指令

  • 相关阅读:
    Libevent源码分析系列
    TCP检验和
    Redis—数据结构之list
    STL—list
    STL—vector
    STL—vector空间的动态增长
    STL—内存的配置与释放
    Actuator 未授权访问之heapdump利用
    Git submodule update 命令执行
    利用Haproxy搭建 HTTP 请求走私(Request smuggling)环境
  • 原文地址:https://www.cnblogs.com/wenziqi/p/2356831.html
Copyright © 2020-2023  润新知