gpt4 book ai didi

assembly - 将寄存器与其自身进行异或的目的是什么?

转载 作者:行者123 更新时间:2023-12-02 16:52:07 24 4
gpt4 key购买 nike

xor eax, eax将始终设置 eax归零,对吗?那么,为什么 MSVC++ 有时会将其放入我的可执行文件的代码中? mov eax, 0 效率更高吗? ?

012B1002  in          al,dx 
012B1003 push ecx
int i = 5;
012B1004 mov dword ptr [i],5
return 0;
012B100B xor eax,eax

另外,in al, dx 是什么意思? ?

最佳答案

是的,这样效率更高。

该操作码比 mov eax, 0 短,只有 2 个字节,处理器识别特殊情况并将其视为 mov eax, 0 且不带 false读取对eax的依赖,因此执行时间是相同的。

关于assembly - 将寄存器与其自身进行异或的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1396527/

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