第一个结论:
$x + y = (x \& y)*2 + (x \quad xor \quad y)$
感性证明一下:
证明:a xor b是不考虑进位时加法结果。当二进制位同时为1时,才有进位,因此 (a&b)<<1是进位产生的值,称为进位补偿。将 两者相加便是完整加法结果。
第二个结论:
$(x \& y) \& (x \quad xor \quad y)=0$
自己先理解一下。
$s = a*2 + (x \quad xor \quad y)$
所以 $s-2*a \ge 0$ 必须满足
且$(s-2*a ) \& a $ 必须为0