gpt4 book ai didi

x86 - 在 64 位 ASM 中。有没有一种只注意寄存器底部 32 位的好方法

转载 作者:行者123 更新时间:2023-12-04 19:38:26 25 4
gpt4 key购买 nike

假设我们在 RAX 中有一些值(value)。我们希望不是 RAX 的低 32 位,而保持高 32 位不变。有没有很好的方法来做到这一点?

像这样的命令:

not eax

不幸的是零扩展。

我可以这样做:
mov rbx,rax
not ebx ; or not rbx
and rax, 0xffffffff00000000
or rax, rbx

但感觉应该有更好的方法。

最佳答案

你可以用 0x00000000ffffffff 异或,这将翻转底部的 32 位。

关于x86 - 在 64 位 ASM 中。有没有一种只注意寄存器底部 32 位的好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31992420/

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