Answers for "x86 jne"

0

x86 jne

JE and JZ are just different names for exactly the same thing: a conditional jump when ZF (the "zero" flag) is equal to 1.
(Similarly, JNE and JNZ are just different names for a conditional jump when ZF is equal to 0.)
You could use them interchangeably, but you should use them depending on what you are doing:
JZ/JNZ are more appropriate when you are explicitly testing for something being equal to zero:
dec  ecx
jz   counter_is_now_zero

JE and JNE are more appropriate after a CMP instruction:
cmp  edx, 42
je   the_answer_is_42
(A CMP instruction performs a subtraction, and throws the value of the result away, while keeping the flags; which is why you get ZF=1 when the operands are equal and ZF=0 when they're not.)
Posted by: Guest on February-21-2022

Browse Popular Code Answers by Language