gpt4 book ai didi

assembly - xor 之后的 x86 jnz?

转载 作者:行者123 更新时间:2023-12-04 13:17:56 28 4
gpt4 key购买 nike

使用IDA Pro反汇编x86 dll后,我找到了这个代码(我在pusedo-c代码中添加的注释。我希望它们是正确的):

test    ebx, ebx        ; if (ebx == false)
jz short loc_6385A34B ; Jump to 0x6385a34b
mov eax, [ebx+84h] ; eax = *(ebx+0x84)
mov ecx, [esi+84h] ; ecx = *(esi+0x84)
mov al, [eax+30h] ; al = *(*(ebx+0x84)+0x30)
xor al, [ecx+30h] ; al = al XOR *(*(esi+0x84)+0x30)
jnz loc_6385A453

让我更容易理解:
mov     eax, b3h
xor eax, d6h
jnz ...

xor 指令后条件跳转指令如何工作?

最佳答案

像大多数说明一样,xor根据先前操作的结果设置处理器条件标志。在这种情况下,如果 xor 的结果,Z 标志将被设置。为零。 jnz指令测试 Z 标志,如果未设置则跳转。

关于assembly - xor 之后的 x86 jnz?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2984025/

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