AArch64是ARMv8 架构的一种执行状态。 ARMv8-A 将 64 位架构支持引入 ARM 架构中,其中包括: - 64 位通用寄存器、SP(堆栈指针)和 PC(程序计数器)
- 64 位数据处理和扩展的虚拟寻址
两种主要执行状态: - AArch64 - 64 位执行状态,包括该状态的异常模型、内存模型、程序员模型和指令集支持
- AArch32 — 32 位执行状态,包括该状态的异常模型、内存模型、程序员模型和指令集支持
这些执行状态支持三个主要指令集 - A32(或 ARM):32 位固定长度指令集,通过不同架构变体增强部分 32 位架构执行环境现在称为 AArch32。
- T32 (Thumb) 是以 16 位固定长度指令集的形式引入的,随后在引入 Thumb-2 技术时增强为 16 位和 32 位混合长度指令集。部分 32 位架构执行环境现在称为 AArch32。
- A64:提供与 ARM 和 Thumb 指令集类似功能的 32 位固定长度指令集。随 ARMv8-A 一起引入,它是一种 AArch64 指令集。
ARM ISA 不断改进,以满足前沿应用程序开发人员日益增长的要求,同时保留了必要的向后兼容性,以保护软件开发投资。在 ARMv8-A 中,对 A32 和 T32 进行了一些增补,以保持与 A64 指令集一致。
|