请稍侯

异或的两个常见应用

21 January 2021

异或的两个常见应用

异或运算符”∧”也称XOR运算符。它的规则是:若参加运算的两个二进位同号,则结果为0(假);异号则为1(真)。即 0∧0=0,0∧1=1, 1^0=1,1∧1=0。

运算 说明
0 ^ 0=0,0 ^ 1=1 0异或任何数,其结果=任何数
1 ^ 0=1,1 ^ 1=0 1异或任何数,其结果=任何数取反
x ^ x=0 任何数异或自己,等于把自己置0

翻转特定位

比如: 01111010,想使其低4位翻转,即1变为0,0变为1。 将它与 00001111 进行 ∧ 运算即可,得到 01110101。

交换两个值

例如,交换两个整数a=3,b=4的值,可通过下列语句实现:

aab;
bba; //等同于 b = b∧(a∧b) = 0∧a = a
a=ab; //等同于 a = (a∧b)∧a = 0∧b = b