为什么这个XOR会导致更小的结果?

时间:2013-07-11 20:29:53

标签: binary logic bit-manipulation xor

以下是一些XOR的例子,它们真的让我循环:

Number 1:     100111111111111111111111
Number 2:     101001011001010010000011
XOR Result:     1110100110101101111100


Number 1:   101000000000000000000000
Number 2:   101001011001010010000011
XOR Result:      1011001010010000011

为什么第二组的XOR结果要小得多?两个集合中的数字2是相同的,而第二个集合中的数字1仅增加了1,但是异或结果是如此不同。为什么会这样?看起来它忽略了第二组中的前5位。

1 个答案:

答案 0 :(得分:2)

因为前导位是相同的,这将导致在XOR操作下的0和数字前导零是无关紧要的。

001010

相同

(没有区别)

Number 1:     100111111111111111111111
Number 2:     101001011001010010000011
XOR Result:   001110100110101101111100