【前言】

       大家都知道程序中的所有数在计算机的存储就是 0和1,都是以二进制的形式存储的。位运算就是直接对内存中的二进制位进行操作。C语言的位运算操作对象只能是整型或字符型数据。

                                                     【一起来学C语言】位运算        

【6种位运算】

1.& 按位与(按位乘)
相应二进制位都为1,结果为1。二进制位有0,则结果为0。
作用:清零。

2.| 按位或(按位加)
相应二进制位有1,则结果为1。二进制位全为0,则结果为0。
作用:可将特定位置位1.

3.^ 按位异或运算 
相应二进制位相同为0,相异为1。

4.~ 按位取反
单目运算符,按位取反后0变1,1变0。
对一个数按位取反得到的值为该数加1后,再乘负一。
16个1按位取反为16个零,加1为1,乘-1,最后得-1。

5.<< 按位左移运算
格式:数<<n
功能:将二进制位按位依次序左移n位。相当于数*2的n次方。

6.>> 按位右移运算
格式:数>>n
功能:将二进制位按位依次序右移n位。相当于数/2的n次方。如果为负数并不能被2整除,得到的商加1.

举个栗子
040<<1
040为八进制(首个0为八进制标志),八进制转换为二进制。一位对三位为100 000 。
左移一位,相当于末位补0, 为001 000 000 ,二进制转为八进制为100。

【小结】

       位运算特定的功能比较强,对于一些特定的计算功能还是很有效的。

相关文章:

  • 2021-08-13
  • 2021-09-10
  • 2021-06-16
  • 2022-01-29
  • 2022-12-23
  • 2021-06-26
  • 2021-06-21
猜你喜欢
  • 2022-02-19
  • 2021-12-05
  • 2021-08-06
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案