首页建站位运算?位运算符左移右移怎么运算

位运算?位运算符左移右移怎么运算

编程之家2024-05-1188次浏览

一、位运算符的运算规则

1.

位运算?位运算符左移右移怎么运算

按位取反(~)单目运算符,以二进制为单位,1变0,0变1。

2.

按位与(&)、按位或(|)双目运算符,以二进制为单位。1&1=11|1=10&0=00|0=01&0=01|0=10&1=00|1=1

3.

异或(^)双目运算符,以二进制为单位。运算规则:两个数相同异或为0,不同异或为1。1^1=00^0=01^0=10^1=1特性:与1异或具有翻转性(0变1,1变0)与0异或具有保与1异或具有翻转性(0变1,1变0)

与0异或具有保持性(异或后为本身)

位运算?位运算符左移右移怎么运算

与一个二进制数连续异或两次后恢复原值不变,具有恢复性

异或运算具有交换性(a^b=b^a)

二、位运算符怎么运算

位运算是很多算法优化的基础和实现的条件,极其重要。理解位运算对于一些算法及其优化有着非常重要的意义。

技巧及用途

与运算常常用于二进制下的取位操作。想要知道二进制下的某位是否是1,就&上这个位数对应的十进制数。假如返回的是这个十进制数本身,则这个位的确是1,反之就是0.

比如:

位运算?位运算符左移右移怎么运算

我们要取第三位是否为1,我们只需要与&上第三位(二进制表示为100)对应的二进制数4,如果返回值为4,就代表第三位为1,反之就是0.

最常用的是取二进制下的最末位,即a&1。这样的技巧可以用于判断奇偶,根据二进制常识,尾数为1则为奇数,反之为偶数。

三、什么是位运算什么是逻辑运算

位运算是对每一位进行notandor等运算。

在c/c++中,逻辑运算是短路的。比如a&&b,a是false后不会evalb。可以理解为ifa是false返回a,elseevalb。||这是ifa是true返回a,elseevalb。

移动增值业务,增值业务费可以取消吗iphone4s iphone4(iphone4s和iphone4有什么区别)