Co robi ten kod zespołu? (TEST, XOR, JNZ)
1
TEST EAX,EAX
JNZ SHORT program.00407190
2.
XOR EAX,EAX
JNZ SHORT program.00407190
Proszę, popraw mnie, jeśli się mylę. Dziękuję Ci! :)
Z mojego dotychczasowego zrozumienia:
JNZ
skacze, jeśli nie jest równe zero, przeskoczy lub nie zależy od tego, czyZF
jest ustawiony na 1 lub nie. Jeśli jest 1, nie przeskoczy. W przeciwnym razie skoczy.
Z mojego zrozumienia dla kodu # 1,TEST EAX,EAX
sprawdzi, czy jest zero, czy nie. Jeśli nie jest równy zero (ZF
jest 0), przeskoczy do adresu 00407190.
Dla kodu # 2XOR EAX,EAX
ustawi rejestr EAX na 0. Czy ustawił jakieś flagi? Jeśli nie, to jakJNZ
instrukcja określa skok?
Wreszcie, dlaczego ludzie chcieliby sprawdzić, czyEAX
jest 0 czy nie? Prosimy o pomoc w łatwiejszym i bardziej szczegółowym wyjaśnieniu, wciąż jestem początkującym.