异或运算

Posted Evai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了异或运算相关的知识,希望对你有一定的参考价值。

异或(xor)是一个数学运算符。它应用于逻辑运算。异或的数学符号为“⊕”,计算机符号为“xor”

运算方法:如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。

 

举个例子:

int a = 3;
int b = 5;
System.out.println(a ^ b);  //6

 

其内部是转换成二进制再进行运算。位运算是非常迅速的,因为它直接对内存中的二进制数据进行操作。

 

5的二进制为101,3的二进制为11,前面补0。

根据不同为真,相同为假,结果为:

101 ^ 011 = 110  

 

110转为十进制就是6。

 

异或的用途:实现两个值的交换,而不必使用临时变量。并且能作为加解密。

 

以上是关于异或运算的主要内容,如果未能解决你的问题,请参考以下文章

异或运算进行两数交换

C#中通过逻辑^(异或)运算交换两个值隐藏的巨坑!!!

C++中异或的使用例题?

减少,异或运算符 (--) 在 if 和 for 语句上

go中异或运算带来的疑惑

位运算 异或51nod区间xor