ARMv8是ARM版本升级以来最大的一次改变,ARMv8的架构继承以往ARMv7与之前处理器技术的基础,除了现有的16/32bit的Thumb2指令支持外,也向前兼容现有的A32(ARM 32bit)指令集,扩充了基于64bit的AArch64架构,除了新增A64(ARM 64bit)指令集外,也扩充了现有的A32(ARM 32bit)和T32(Thumb2 32bit)指令集;
ARMv8拥有两种执行模式(two execution modes):
AArch64 :64-bit registers and memory accesses, new instruction set;
AArch32 : backwards compatible with ARMv7-A;
(一)A64新的指令和寄存器固定大小32位操作码,清除基于5位寄存器说明符的解码表;
可以拥有32位或者64位参数;
地址设定为64位,主要针对LP64和LLP64数据模型;
比AArch32拥有更少的条件指令,条件指令有:分支,比较,选择;
没有LDM/STM(用于批量从内存中读取或者写入数据)指令,添加LDP/STP指令来操作以降低复杂性及功耗;
支持先进的SIMD(Single-Instruction,Multip