Nand(a,b) = ~a & ~b
Not(a) = ~a = ~a & ~a = Nand(a,a)
Or(a,b) = a | b = ~(~a & ~b) = Nand(Nand(a,b),Nand(a,b))
And(a,b) = a & b = ~~a & ~~b = Nand(Nand(a,a),Nand(b,b))
Xor(a,b) = (~a & b) | (a & ~b) = (0 | (a & ~b)) | (0 | (b & ~a)) = (a & (~a | ~b)) | (b & (~a | ~b)) = (~a | ~b) & (a | b) = ~(a & b) | ~(~a & ~b) = Nand(And(a,b),Nand(a,b)) = Nand(Nand(Nand(a,a),Nand(b,b)),Nand(a,b))
-a = ~a + 1
a - b = ~(a - b) + 1 = ~(a - b - 1) = ~(~a + 1 - 1 + b) = ~(~a + b)
减法公式的证明只能说是“自我安慰”,因为我不清楚如何证明其EFLAGS的得到过程。