计算机中的布尔操作 ^ (即XOR)的学习

计算机中 ^ 代表了逻辑操作XOR (Exclusive-OR)。XOR有两个输入端,一个输出端,它的真值表如下:

^ 0 1
0 0 1
1 1 0

它的效果大致相当于 | 操作(即OR,任意一个输入为1,则输出为1),除了在输入端都为1时输出为0。

它可以用来计算一位二进制的和,如下:
- 0+0=0
- 1+0=1
- 0+1=1
- 1+1=0

最后的1+1 得到的结果是10才对,只不过这里只计算和,所以不考虑进位。

让我们扩展到更多位数:

  0110
^ 1100
------
  1010

可以看到, ^ 的操作效果就是将两个二进制数相加,但是不考虑进位的情况。真正的相加(也就是考虑进位的相加),上面的运算结果应当是10010。

还可以更加直接的认为, ^ 操作就是将两个二进制数都为1的位变为0,其它的位就是 | (OR)操作而已。

还可以理解为, ^ 的操作结果中为1的位表示两个数中此位的值不同,为0表示两个数中此位的值相同。

你可能感兴趣的:(计算机系统,计算机)