您的位置 首页 测评

根据Android的ARM汇编语言系列之一:ARM汇编语言开篇

章节列表之一:ARM汇编语言开篇之二:C/C++程序生成ARM汇编程序的过程分析之三:ARM汇编语言程序结构之四:ARM处理器的寻址方式之五:ARM指…

章节列表

之一:ARM汇编语言开篇
之二:C/C++程序生成ARM汇编程序的进程剖析
之三:ARM汇编语言程序结构
之四:ARM处理器的寻址方法
之五:ARM指令集与Thumb指令集
之六:NEON指令集与VFP指令集

这是博文的开篇文章,这儿会先介绍一下ARM处理器的大致分类和效果。

一 ARM处理器与ARM指令集

整个ARM处理器被分为三个部分:

  • Classic
  • Embedded
  • Application

Classic被称为经典系列。

ARM1~ARM11一向都以数字来命名,ARM12今后改为用Cortex命名。Cortex有以下几个分类:

  • Cortex-A:广泛用于智能手机、上网本、电子书以及数字电视等。
  • Cortex-M:用于微操控范畴,该系列的特点是高能效和低功耗
  • Cortex-R:用于支撑深层嵌入式的饿实时运用,该系列的特点是低功耗、杰出的中止行为、杰出功用以及与现有渠道的高兼容性。

虽然ARM处理器版别许多,它是许多类型ARM处理器兼容一套ARM指令集,ARM架构与ARM处理器的对应联系如下图所示:

上图触及的技能,这儿也简略提一下:

  • VFP:为ARM处理器供给了浮点运算功用。
  • Jazelle:答应某些架构的硬件上加快运转Java字节码。
  • SIMD:多媒体指令集。
  • TrustZone:安全性操控,防止产品遭到外部的歹意进犯。
  • NEON:NEON是SIMD体系结构的扩展,NEON在履行上比传统的SIMD占用更少的指令周期

Android开始挑选ARM作为渠道设备的处理器结构,并做了专门的优化。发展到Android4.1版别今后,现已全面支撑ARM、x86和MIPS三种架构的处理器。

二 ARM处理器的作业形式和作业状况

2.1 ARM处理器的作业形式

ARM处理器共37个32位处理器,其中有31个通用寄存器和6个状况寄存器。ARM处理器支撑7种运转形式,分别是:

  • 用户形式(usr):ARM处理器正常的程序运转状况。
  • 快速中止形式(flq):用于高速数据传输或通道处理。
  • 外部中止形式(irq):用于通用的中止处理。
  • 管理形式(svc):操作体系运用的保护形式。
  • 数据拜访停止形式(abt):当数据或指令预取停止时进入该形式,可用于虚拟存储以及存储保护。
  • 体系形式(sys):运转具有特短的操作体系使命。
  • 未定义指令停止形式(und):当未定义的指令履行时进入该形式。

2.2 ARM处理器的作业状况

  • ARM状况:履行32位字对齐的ARM指令。
  • Thumb状况:履行16位字对齐的ARM指令。

Thumb状况下的寄存器的命名与ARM有部分差异,它们的对应联系如下所示:

  • Thumb状况下的R0~R7与ARM状况下的R0~R7相同。
  • Thumb状况下的CPSR与ARM状况下的CPSR相同。
  • Thumb状况下的FP与ARM状况下的R11相同。
  • Thumb状况下的IP与ARM状况下的R12相同。
  • Thumb状况下的SP与ARM状况下的R13相同。
  • Thumb状况下的LR与ARM状况下的R14相同。
  • Thumb状况下的PC与ARM状况下的R15相同。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ceping/276702.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部