快速链接:
.
个人博客笔记导读目录(全部)
- 付费专栏-付费课程 【购买须知】:
- 【精选】ARMv8/ARMv9架构入门到精通-[目录]
ARMV8-aarch64有31个64位的寄存器 : x0-x30, 其中x29是Frame pointer(FP), x30是procedure link register(LR)
(sp pc spsr elr xzr等)
在aarch64中,没有x31或w31寄存器,但是在一些指令或软件编码中,经常将数字31做为XZR或SP
默认情况下,来了一个异常后,选择当前异常级别的sp,例如来了一个异常到EL1, 那么将自动选择sp_el1做为sp;
但是呢,在高异常等级,通过修改spsel,也可以使用SP_EL0
PSTATE的bit位定义: