Operation

IF AddressSize = 16 THEN CountReg is CX ELSE CountReg is ECX; FI;
CountReg  CountReg - 1;

IF instruction<> LOOP
THEN
IF (instruction = LOOPE) OR (instruction = LOOPZ)
THEN BranchCond  (ZF = 1) AND (CountReg <> 0);
FI;
IF (instruction = LOOPNE) OR (instruction = LOOPNZ)
THEN BranchCond  (ZF = 0) AND (CountReg <> 0);
FI;
FI;

IF BranchCond
THEN
IF OperandSize = 16
THEN
IP  IP + SignExtend(rel8);
ELSE (* OperandSize = 32 *)
EIP  EIP + SignExtend(rel8);
FI;
FI;


[Back: Description]
[Next: Protected Mode Exceptions]