C#中位运算的用法

这篇文章主要介绍“C#中位运算的用法”,在日常操作中,相信很多人在C#中位运算的用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#中位运算的用法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、微信小程序定制开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了富裕免费建站欢迎大家使用!

运算符号

意义

运算对象类型

运算结果类型

对象数

实例

~

位逻辑非运算

整型,字符型

整型

1

~a

&

位逻辑与运算

2

a & b

|

位逻辑或运算

2

a | b

^

位逻辑异或运算

2

a ^ b

<<

位左移运算

2

a<<4

>>

位右移运算

2

a>>2

开始:

一、位逻辑非运算

位逻辑非运算是单目的,只有一个运算对象。位逻辑非运算按位对运算对象的值进行非运算。符号为:~

即:如果某一位等于0,就将其转变为1;如果某一位等于1,就将其转变为0

对二进制的10010001进行位逻辑非运算,结果等于01101110

用十进制:~145等于110

二、位逻辑与运算

位逻辑与运算将两个运算对象按位进行与运算。符号为&。

运算规则为:1&1=1;0&1=0;0&0=0

#region 位运算与运算   int a = 11; //11的二进制是0000 1011   int b = 13; //13的二进制是0000 1101   Console.WriteLine(a & b); //11 & 13的结果就是0000 1001 即结果是9   Console.Read();   #endregion

三、位逻辑或运算

位逻辑或运算将两个运算对象按位进行或运算。符号为 |

运算规则为:1|1=1;1|0=1;0|0=0

#region 位运算或运算      int a = 11; //11的二进制是0000 1011      int b = 13; //13的二进制是0000 1101      Console.WriteLine(a | b); //11 | 13的结果就是0000 1111 即结果是15      Console.Read();      #endregion

四、位逻辑异或运算

位逻辑异或运算将两个运算对象按位进行异或运算。符号为^

运算规则:1^1=0;1^0=1;0^0=0 (相同得0,相异得1)

#region 位运算异或运算      int a = 11; //11的二进制是0000 1011      int b = 13; //13的二进制是0000 1101      Console.WriteLine(a ^ b); //11 ^ 13的结果就是0000 0110 即结果是6      Console.Read();      #endregion

五、位左移运算

位左移运算将整个数按位左移若干位,左移后空出的部分0。符号为:<<

运算规则:a<<1 =a乘以2的1次方;a<<2 =a乘以2的2次方;a<<3 =a乘以2的3次方

#region 位左移运算      int a = 11; //11的二进制是0000 1011      Console.WriteLine(a << 2); //0000 1011 左位移2位的结果就是0010 1100 即结果是44 (11*2^2=44)      Console.Read();      #endregion

六、位右移运算

位右移运算将整个数按位右移若干位,右移后空出的部分填0。符号为:>>

运算规则:a>>1 = a整除2的1次方;a>>2 = a整除2的2次方;a>>3 = a整除2的3次方

#region 位右移运算      int a = 11; //11的二进制是0000 1011      Console.WriteLine(a >> 2); //0000 1011 右位移2位的结果就是0000 0010 即结果是2 (11÷(2^2)=2)      Console.Read();      #endregion

到此,关于“C#中位运算的用法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


名称栏目:C#中位运算的用法
网页链接:http://pwwzsj.com/article/gjigjo.html