I'm was doing a manual operation with TEST
(Parity flag operation)
, the problem it's that i can't get the right result, consider this:
ax = 256 = 0000 0001 0000 0000
so if i do:
test ah, 0x44
the PF
flag operation should be:
0000 0000 =
0000 0001
&
0100 0100
PF = 0000 0000 XNOR 0000 0000
PF = 1111 1111
?
I've followed the intel reference, according to this:
the question it's what i'm doing wrong?
lahf instruction
have a look at my answer #41336153 – BarneyTEMP[0:7]
but you are usingTEMP[15:8]
. Second,BitwiseXNOR
has only one parameter, so it's not clear why you are calculating0000 0000 XNOR 0000 0000
(especially since the result has 8 bits, but PF is only one bit). WhatBitwiseXNOR
means is to XOR all the bits together, and then negate the result. – Sensationbit0 to bit7 xorged and then negated?
something like this~(0^0^0^0^0^0^0)
? – Racquelracquet