Instructions II
Learn about different modes like conditional jumps, register structures, return values, and byte registers.
We'll cover the following...
We'll cover the following...
Conditional jumps
Consider these two C/C++ code fragments:
if (a == 0) if (a != 0){ {++a; ++a;} }else else{ {--a; --a;} }
CPU fetches instructions sequentially, so we must tell the CPU that we want to skip some instructions if some condition is met (or not met)—for example, if a != 0.
The JNZ (jump if not zero) and JZ (jump if zero) instructions test the ZF flag and change %RIP if the ZF bit is cleared for JZN ...