一篇文章读懂Armv8 AArch64

Armv8是Armv7之后的一个重要架构更新。其中一个主要的变化是引入了64的架构,即AArch64。AArch64状态只有在Armv8架构中才有。而且在AArch64状态下执行的代码只能使用A64指令集。当然ARM为了维持整个生态参与者的利益,Armv8还是保持与现有32位体系结构兼容性的AArch32,即Armv8之前的Armv7配置文件定义的那套设计规范。AArch32今天不会进行具体介绍,今天的重点是AArch64,但是不管怎么变最本质的规则是不会变的,ARM对所有硬件资源的操作,都抽象成对寄存器的操作,寄存器隐藏了硬件的具体操作细节提供配置的接口,硬件处理器拿着这些配置负责具体的执行。下面具体看一下在AArch64状态的一些主要技术细节:

1 AArch64状态下的寄存器

1 AArch64状态下的寄存器.jpg

2 异常级别

2 异常级别.jpg

3 链接寄存器

3 链接寄存器.jpg

4 堆栈指针寄存器

4 堆栈指针寄存器.jpg

5 预留的核心寄存器名字

5 预留的核心寄存器名字.jpg

6 预留的扩展的寄存器名字

6 预留的扩展的寄存器名字.jpg

7 程序计数器

7 程序计数器.jpg

8 带条件的执行

8 带条件的执行.jpg

9 Q标志

9 Q标志.jpg

10 进程状态

10 进程状态.jpg

11 保存的程序状态寄存器(SPSR)

11 保存的程序状态寄存器(SPSR).jpg

12 A64指令集

12 A64指令集.jpg


参考资料

DUI0801I_armasm_user_guide


转载链接:https://www.jianshu.com/p/65afe6e37764
 

  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值