XOR(^)の役割(修正)

真偽値表
0 xor 0 = 0
0 xor 1 = 1
1 xor 0 = 1
1 xor 1 = 0

(1)繰り上がり無し足し算
上記を見れば分かるとおり、XORでは繰り上がり無し足し算の結果を返します。

(2)ビットブロック(任意ビット反転子)
(1)の応用です。XORでは、0ならそのビットをスルー、1ならそのビットを反転させます。