These samples illustrate a few tricks about how to avoid conditional jumps with help of logical instructions. a:=abs(a) CDQ XOR EAX,EDX SUB EAX,EDX if (b < a) a:=b SUB EBX,EAX SBB ECX,ECX AND ECX,EBX ADD EAX,ECX if (a < b) a:=b SUB EBX,EAX SBB ECX,ECX NOT ECX AND ECX,EBX ADD EAX,ECX if (a!=0) a:=b else a:=c CMP EAX,1 SBB EAX,EAX 0 | FFFF XOR ECX,EBX cx=cx xor bx AND EAX,ECX 0 | cx xor bx XOR EAX,EBX bx | cx xor bx xor bx if (carry) a:=b else a:=a condition SBB ECX,ECX SUB EBX,EAX AND ECX,EAX ADD EAX,ECX if (carry) a:=a+b else a:=a condition SBB ECX,ECX AND ECX,EBX ADD EAX,ECX