博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ARM、THUMB、THUMBX、CODE16 和 CODE32
阅读量:2220 次
发布时间:2019-05-08

本文共 986 字,大约阅读时间需要 3 分钟。

7.7.1. ARM、THUMB、THUMBX、CODE16 和 CODE32

ARM 指令和 CODE32 指令是同义词。 它们指示汇编程序将后面的指令解释为 32 位 ARM 指令。 必要时,它们也可插入最多三个填充字节,以对齐到下一个字边界。

在此模式下,汇编程序接受最新版本和旧版本的汇编语言。

语法

ARMTHUMBTHUMBXCODE16CODE32

用法

在包含使用不同指令集的代码的文件中:

  • ARM 必须位于任何 ARM 代码之前。 CODE32ARM 的同义词。

  • THUMB 必须位于用新语法编写的 Thumb 代码之前。

  • THUMBX 必须位于用新语法编写的 Thumb‑2EE 代码之前。

  • CODE16 必须位于用旧 Thumb 语法编写的 Thumb 代码之前。

这些命令不汇编为改变状态的指令。 它们仅指示汇编程序适当地汇编 ARM、Thumb‑2、Thumb‑2EE 或 Thumb 指令,并在必要时插入填充字节。

示例

此示例演示如何使用 ARMCODE16 从 ARM 指令跳转到 16 位 Thumb 指令。

AREA ToThumb, CODE, READONLY    ; Name this block of code        ENTRY                           ; Mark first instruction to execute        ARM                             ; Subsequent instructions are ARM start        ADR     r0, into_thumb + 1      ; Processor starts in ARM state         BX      r0                      ; Inline switch to Thumb state        THUMB                           ; Subsequent instructions are Thumbinto_thumb        MOVS    r0, #10                 ; New‑style Thumb instructions

转载地址:http://ppnfb.baihongyu.com/

你可能感兴趣的文章
硬盘的接口、协议
查看>>
VLAN与子网划分区别
查看>>
Cisco Packet Tracer教程
查看>>
02. 交换机的基本配置和管理
查看>>
03. 交换机的Telnet远程登陆配置
查看>>
微信小程序-调用-腾讯视频-解决方案
查看>>
phpStudy安装yaf扩展
查看>>
密码 加密 加盐 常用操作记录
查看>>
TP 分页后,调用指定页。
查看>>
Oracle数据库中的(+)连接
查看>>
java-oracle中几十个实用的PL/SQL
查看>>
PLSQL常用方法汇总
查看>>
几个基本的 Sql Plus 命令 和 例子
查看>>
PLSQL单行函数和组函数详解
查看>>
Oracle PL/SQL语言初级教程之异常处理
查看>>
Oracle PL/SQL语言初级教程之游标
查看>>
Oracle PL/SQL语言初级教程之操作和控制语言
查看>>
Oracle PL/SQL语言初级教程之过程和函数
查看>>
Oracle PL/SQL语言初级教程之表和视图
查看>>
Oracle PL/SQL语言初级教程之完整性约束
查看>>