与运算、或运算、异或运算

1.与运算(&)

计算规则:两个计算的二进制数 相同位为1结果为1否则为0

1 & 1 = 1;
1 & 0 = 0;
0 & 1 = 0;
0 & 0 = 0;

例如:

1 & 2
换成二进制
0000 0001 & 
0000 0010
结果为
0000 0000
 
2 & 3
0000 0010 & 
0000 0011 
结果为: 0000 0010   ==> 2

通过这个特性 我们通常可以用来清零 想给哪一位清零就把哪一位置为0 若不想清零这一位 这一位为1即可

0010 1100 & 0000 0000 = 0000 0000

0010 1100 & 0010 0000 = 0010 0000

从上面的第二个例子可以看出 我们还可以用这个特性 用于取出某一位 上面我们取出来的数字就是32了

2.或运算(|)

计算规则:相同位置的两个二进制数 有1结果就是1 否则为0

0 | 0 = 0;
0 | 1 = 1;
1 | 0 = 1;
1 | 1 = 1;
 
0010 1011 | 0101 0100 = 0111 1111

或运算的这个特性 我们经常可以用来给给定位置置为1 比如我要给最后一位和倒数第三位置为1

0000 | 0101 = 0101

3.异或运算(^)

计算规则:相同为0 相异为1

0 ^ 0 = 0;
0 ^ 1 = 1;
1 ^ 0 = 1;
1 ^ 1 = 0;

原文链接:https://blog.csdn.net/qq_38475119/article/details/107181681

你可能感兴趣的:(笔记)