arm64组成
汇编中共有34个寄存器。其中包括31个通用寄存器、SP寄存器、PC寄存器,CPSR寄存器。
•31个通用寄存器中:
X0-X30:表示是64位的寄存器。
W0-W30:表示是32位的寄存器。
•X31 : 也称为零寄存器(它一般用于变量的初始化),它也有两表现形式:XZR:表示是64位的零寄存器, 它在内存中是用8个字节存储。
WZR:表示是32位的零寄存器,它在内存中是用4个字节存储。
•SP : 保存栈指针(栈顶指针),使用SP或WSP来进行对SP寄存器的访问,也就是用于操作局部变量地址。
•PC:程序计数器(PC指针寄存器),它用于指向即将要执行的下一条指令。
•CPSR:状态寄存器
•FP(X29):保存栈帧地址(栈底指针)
•LP(X30):通常称X30为程序的链接寄存器,保存子程序结束后需要执行的下一条指令。
通用寄存器作用是什么?
•在汇编代码中使用 X0 - X30寄存器进行访问操作数据时,它就表示的是一个64位的数据。
•在汇编代码中使用 W0 - W30寄存器进行访问操作数据时,它表示的是一个32位的数据。