EQUAL: ZF=1 NOT EQUAL: ZF=0 ABOVE: CF=0 ZF=0 BELOW: CF=1 ZF=0 GREATER: ZF=0 SF=OF LESSER: SF<>OF 1 = MSB of first (dest) arg 2 = MSB of second (src) arg c = carry flag o = overflow flag s = sign flag 1 2 C | O S ------------ 0 0 0 | 0 0 0 0 1 | 0 1 0 1 0 | N/A THIS STATE IS IMPOSSIBLE 0 1 1 | 1 1 1 0 0 | 1 0 1 0 1 | N/A THIS STATE IS IMPOSSIBLE 1 1 0 | 0 0 1 1 1 | 0 1 THE ABOVE TABLE CAN BE REDUCED TO THIS IF WE DO NOT INTEND TO USE THESE INSTRUCTIONS: JO JNO JS JNS 1 2 C | S ------------ 0 0 0 | 0 0 0 1 | 1 0 1 1 | 0 1 0 0 | 1 1 1 0 | 0 1 1 1 | 1 (1 == 2)(C) + C(12 + !1!2) + 1!2!C !1!2C + 1!2!C + 12C if (cf) if (1 == 2) { sf=1 } } else { if (1) if (!2) sf=1 } if ((1 == 2 && CF) || !CF) sf=1