当前位置:首页 > 嵌入式 > 嵌入式硬件

arm指令集可以分为6类,即跳转指令、数据处理指令、程序状态寄存器(psr)传输指令、load/store指令、协处理器指令和异常中版产生指令。下面分别对这6种指令进行介绍。  1.跳转指令  在arm中有两种方式可以实现程序的跳转:一种是刀‘转指令;另一种是直接向pc寄存器(r15)中写入目标地址值。  通过直接向pc寄存器中写入目标地址值可以实现在46b地址空间中任意跳转,这种跳转指令又称为长跳转。如果在长跳转指令之前使用mov lr,pc等指令,则可以保存将来返回的地址值,这样就实现了在46b地址空间中的子程序调用。  在arm版本5及以上的体系中,实现了arm指令集和thumb指令集的混合使用。指令使用目标地址值的bit[0]来确定目标程序的类型。bit[0]的值为1时,目标程序为thumb指令;bit[0]值为0时,目标程序为arm指令。  在arm版本5以前的体系中,传送到pc寄存器中的目标地址值的低两位bits[1∶0]被忽略,跳转指令只能在arm指令集中执行,即程序不能从arm状态切换到thumb状态。非t系列arm版本5体系不含thumb指令,当程序试图切换到thumb状态时,将产生未定义指令异常中断。  arm跳转指令可以从当前指令向前或向后的32mb地址空间跳转。这类跳转指令有以下4种。  (1)b 跳4专指令  b〔条件) (地址)  b指令属于arm指令集,是最简单的分支指令。一旦遇到一个b指令,arm处理器将立即跳转到给定的地址,从那里继续执行。注意:存储在分支指令中的实际值是相对当前r15的值的一个偏移量,而不是一个绝对地址。它的值由汇编器来计算,是24位有符号数,左移两位后有符号扩展为32位,表示的有效偏移位为26位(+/- 32 mb)。  (2)bl 带返回的跳转指令  bi,〔条件) (地址)  bl指令也属于arm指令集,是另一个分支指令。就在分支之前,在寄存器r14中装载上r15的内容,因此可以重新装载r14到r15中来返回到这个分支之后的那个指令处执行,它是子例程的一个基本但强力的实现。  (3)blx 带返回和状态切换的跳转指令  blx <地址>  blx指令有两种格式,第1种格式的blx指令记作blx(1)。blx(1)从arm指令集跳转到指令中指定的目标地址,并将程序状态切换到thumb状态,该指令同时将pc寄存器的内容复制到lr寄存器中。  blx(1)指令属于无条件执行的指令。  第2种格式的blx指令记作blx(2)。blx(2)指令从arm指令集跳转到指令中指定的目标地址,目标地址的指令可以是arm指令,也可以是thumb指令。目标地址放在指令中的寄存器<dest>中,该地址的bit[0]值为0,目标地址处的指令类型由cpsr中的t位决定。该指令同时将pc寄存器的内容复制到lr寄存器中。  (4)bx 带状态切换的跳转指令  bx(条件) (dest)  bx指令跳转到指令中指定的目标地址,目标地址处的指令可以是arm指令,也可以是thumb指令。目标地址值为指令的值和0xfl·ffffff做“与”操作的结果,目标地址处的指令类型由寄存器决定。

  欢迎转载,信息来源维库电子市场网()

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

Arm CPU正在从根本上推动AI变革,并造福地球。Arm架构是未来AI计算的基石。​

关键字: ARM AI

近日,Arm推出了Arm® Ethos™-U85神经网络处理器(NPU)和Arm Corstone™-320物联网参考设计平台,旨在满足海量的数据处理和大规模计算,加速推进边缘AI的发展进程。

关键字: ARM

为了赶超云计算市场上的竞争对手,谷歌正试图通过定制的Arm服务器芯片降低云计算服务成本。

关键字: 谷歌 ARM 定制芯片

嵌入式开发作为一个融合了计算机软硬件和系统工程的综合性领域,其成功与否往往取决于三个核心要素的有效整合与协调。这三个要素分别是:硬件平台的选择与设计、软件开发及其优化、以及系统级的设计与集成。深入理解并熟练掌握这三个方面...

关键字: 嵌入式开发 ARM

随着汽车软件数量爆发式的增长,整个行业都需要重新思考汽车产品的开发流程。为此,Arm推出了丰富的硬件IP、新的系统IP,以及全新的汽车计算与计算子系统产品路线图,旨在为各种汽车应用实现性能、功能安全、可扩展等方面的支持。

关键字: ARM 汽车电子

知名移动芯片设计公司ARM最近迈出重要一步,它正式推出汽车芯片设计。ARM推出的芯片设计方案名叫Neoverse,随同芯片一起推出的还有面向汽车制造商、汽车供应商的新系统。

关键字: ARM 汽车芯片 芯片

随着通用人工智能的发展,数据中心的计算需求逐步提高。针对多模态数据、大模型的推理和训练需要更高的算力支持,而随着算力提升与之而来的还需更关注在功耗方面的优化。对于头部云计算和服务厂商而言,针对专门用例提高每瓦性能变得至关...

关键字: ARM 服务器 AI Neoverse CSS

一直以来,riscv架构都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来riscv架构的相关介绍,详细内容请看下文。

关键字: riscv ARM riscv架构

嵌入式处理器是一种特殊的计算机处理器,它被设计用于嵌入到各种设备和系统中,以实现特定的功能。由于其低功耗、高性能和可靠性等特点,嵌入式处理器在许多领域都有广泛的应用,如汽车电子、工业控制、医疗设备等。本文将对嵌入式处理器...

关键字: 嵌入式处理器 嵌入式系统

最新消息报道,知情人士透露Arm近日裁掉了中国70多名软件工程师,并会将部分职位转移到中国以外的地区。Arm通过“全球服务”部门已经将支持其中国客户的工作外包给安谋科技,该部门曾经拥有约200名员工。

关键字: ARM 裁员
关闭
关闭