gpt4 book ai didi

assembly - A64指令末尾的感叹号是什么意思?

转载 作者:行者123 更新时间:2023-12-04 11:20:49 25 4
gpt4 key购买 nike

documentation for LDP and STP给出一个结尾带有感叹号的示例指令:

LDP X8, X2, [X0, #0x10]!

还有 documentation about porting A32 PUSH/POP A64 中的说明给出了以下示例:
PUSH {r0-r1} ---> STP X0, X1, [SP, #-16]!
POP {r0-r1} ---> LDP X0, X1, [SP], #16

这两页都没有解释说明末尾的感叹号是什么意思。它有什么作用?

最佳答案

!意思是“Register write-back”:基址寄存器用来计算传输的地址,已更新 .

在你的例子中:

LDP X8, X2, [X0, #0x10]!
X0修改,以便在操作后:
X0 = X0 + 0x10

如果不放 ! , X0不会被操作修改。

在关于 PUSH/POP 的第二个示例中,不同之处在于增量完成时:
STP X0, X1, [SP, #-16]!店铺地址 SP-16 , 和 SP以同样的方式递减
LDP X0, X1, [SP], #16从地址 SP 加载,并在转移完成后,存储 SP+16SP .

关于assembly - A64指令末尾的感叹号是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39780289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com