ARM总结汇总笔记

ARM(Advanced RISC Machines) 是一种基于RISC架构的高性能处理器。

目录

1.ARM的功能特点

2.ARM结构

        2.1 ARM体系结构命名方法

        2.2 处理器系列划分

        2.3 Cortex-M系列

        2.4 Cortex-A系列

        2.5 Cortex-R系列

 3.ARM指令集

        3.1 算术运算指令

        3.2 逻辑运算指令

        3.3分支指令

        3.4 数据传送指令

4.ARM处理器工作模式

 5.寻址方式

        5.1 立即寻址

        5.2 寄存器寻址

        5.3 寄存器偏移寻址

        5.4 寄存器间接寻址

        5.5 基址寻址

        5.6 多寄存器寻址

        5.7 栈寻址


1.ARM的功能特点

  •         芯片体积小,功耗低,制造成本低,性能优异
  •         支持Thumb(16位)和ARM(32位)两种指令集
  •         采用RISC架构,内部大量使用寄存器,执行指令速度快
  •         大部分指令都是操作寄存器,很少指令访问外部内存
  •         采用多级流水线结构处理速度快
  •         支持多种寻址方式,数据存取方式灵活
  •         指令长度固定,便于编译器操作以及执行指令

2.ARM结构

        2.1 ARM体系结构命名方法

                命名格式

x1代表支持的指令集

x2代表不支持的指令集,定义如图

举例:

ARMv7TxE 表示ARM第7版本,支持Thumb指令集但是不支持增强DSP指令集

        2.2 处理器系列划分

                确定ARM体系结构后,可以形成一系列处理器。处理器的命名主要是功能上的差别

                命名规则:

                x:代表处理器系列

                y:代表是否有存储管理

                z:代表Cache类型

                功能命名列表如下:

 举例:

ARM7TDMI:ARM内核第7个版本,支持Thumb指令集,片上调试,快速乘法器,嵌入式ICE调试

ARM920T-S:ARM内核的第9个版本,支持所有功能

        2.3 Cortex-M系列

        Cortex-M系列处理器包括Cortex-M0、Cortex-M0+、Cortex-M1、Cortex-M3

        Cortex-M4五个子系列,该系列只要针对成本和功耗敏感的应用,例如智能测量,人机接口设备,汽车和工业控制系统

        

        2.4 Cortex-A系列

        

        2.5 Cortex-R系列

 

 3.ARM指令集

        指令集是一个微处理器所有指令的集合,每种微处理器都有自己的指令集,ARM指令集使用RISC精简指令集。

        精简指令集最大特点是所有指令占用相同的存储空间。ARM处理器支持ARM和Thumb两种指令集:ARM指令集工作在32位模式下,指令长度32b;Thumb指令集工作在16位模式下,长度16b

        ARM指令集按照功能分为算术运算指令、逻辑运算指令、分支指令、软件中断和程序数据装载指令

        3.1 算术运算指令

                算术运算指令用于普通数据计算,常见有ADD、ADC、SUB、SBC

  •         ADD指令:普通加法运算,可在有符号或无符号数上进行

                ADD R0, R1, R2                ;R0 = R1 + R2

                ADD R0, R1, #256                ;R0 = R1 + 256

                ADD R0, R2, R3, LSL#1        ;R0 = R2 + (R3 << 1)

  •         ADC指令:用于带进位的加法运算

                ADC <DEST>, <OP1>, <OP2> ---> DEST = OP1 + OP2+carry

  •          SUB指令:普通减法运算

  •         SBC指令:带借位的减法运算

        3.2 逻辑运算指令

  •         AND指令:逻辑与       

 与0b0011

  •         EOR指令:逻辑异或
  •         MOV指令:两个操作数之间复制数据

        3.3分支指令

  •         B指令:根据设置条件跳转到指定代码地址        

        3.4 数据传送指令

  •          单一数据传送指令

  •  多数据传送指令

4.ARM处理器工作模式

        ARM微处理器有两种工作状态:Thumb状态和ARM状态,绝大多数指令都市ARM状态下工作。ARM微处理器可以在工作中随时切换状态。切换工作状态不会影响工作模式和寄存器内容。但是ARM体系要求处理器启动处于ARM状态

        ARM微处理器支持7种工作模式,大多数工作模式都是处理外部中断和异常,分类如图:

         除用户模式外,其余6种模式都是特权模式,特权模式响应代码由操作系统提供。ARM处理器定义31个通用寄存器和6个状态寄存器,不同工作模式下分配的寄存器不同

 5.寻址方式

        寻址:根据指令中的地址码找出操作数地址的过程。以下分别介绍7种常见ARM处理器寻址方式。

        5.1 立即寻址

                

        5.2 寄存器寻址

        5.3 寄存器偏移寻址

                把寄存器的值移位得到结果

  •                  ARM支持的移位操作

        5.4 寄存器间接寻址

        5.5 基址寻址

        5.6 多寄存器寻址

        5.7 栈寻址

  • 2
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值