天天看点

基础才是重中之重~位的运算

位运算无论在C#,VB还是在T-SQL里都有对它支持,位运算即对数值类型的每位进行计算,对于程序里,你可以使用十进制,十六进制,二进制对它进行位运算,事实上无论你使用哪种进制,对于计算机来说最后都为把它转换成二进制(0,1)的形式,因为二进制为简单,呵呵。

下面是关于位运算的表格

运算符号

位运算操作符

运算对象类型

运算结果类型

对象操作数

实例

~

非运算

整型

1个

~x

&

与运算

2个

x & y

|

或运算

x | y

^

异或运算

x ^ y

<< 

左移运算

x << 2

>> 

右移运算

x >> 2

一般地,这种位运算中,我们的操作数多用于2的N次方的结果,如0,2,4,8,16,32,64,128...,为什么呢,因为这些数字在转换成二进制后都很

特别,看一下代码,呵呵

1   1

2     10

4       100

8     1000

16     10000

32     100000

64     1000000

128   10000000

看到时了它,它们只是在最高位是为1,而其它位上都是0,这样对于这些数字在进行位运算时,会有一些性质,我来总结一下:

对于满足2的N次方的十进制数字有以下运算特性:

1 与运算可以用来判断某个数是位在另外一个数中存在:

2 或运算可以用来将两个数相加在一起

3 非运算和与运算在一起使用,可以将一个元素从一个集合里去除

4 左移运算,每移1位相当于乘2

5 右移去处,每移1位相当于除2

总结:

有时候,我们在书本上看到的及网络上看到的东西,不一定是正确的,有时,要求我们自己打开电脑去验证一下,呵呵!

有时候,编程的东西,很多时候当你把十进制变成二进制后会,就海阔天空了,呵呵!

感谢您的阅读!