ARMv8-A

13. The ARMv8-A instruction sets

2019-02-05  本文已影响0人  Loyen

ARMv8-A相关历史文章:

A64指令集和A32指令集类似,都是32bit宽,并且有类似的语法。指令集使用ARMv8-A体系结构中的通用命名约定,以前的32-bit指令集命名如下:

所有的A64指令都是相同的长度,不像T32是可变长的指令集。这个可以使管理和跟踪生成的代码序列更容易,尤其在动态代码生成器上。

13.1 Switching between instruction sets

在单个应用程序中不可能使用来自两种执行状态的代码,在A64和A32或T32指令集中,没有交互操作。
以A64编写的代码不能在ARMv7-A系列处理器中运行,而为ARMv7-A处理器编写的程序可以在ARMv8-A处理器中的AArch32状态下运行:


13.2 Addressing

当处理器能使用单个寄存器来保存64-bit的值时,在程序中访问大内存就变得简单了。32-bit的程序访问的地址范围限制在4G,大部分的可寻址空间都被保留给了操作系统内核、库、外设等,空间不足意味着程序在执行时可能需要映射内存中的一些数据。使用64-bit的指针,有较大的地址空间,可以避免这个问题,同时也使内存映射文件技术的使用变得更方便,也更具有吸引力。即使物理RAM可能不够大来包含整个文件,文件的内容可以被映射到内存空间中。

上一篇下一篇

猜你喜欢

热点阅读