C语言语法终章--位运算
C语言最为重要的就是将程序与内存联系起来,绝对合理且高效的工作,仔细想想这完全和冯.诺依曼的经典计算机结构相吻合,现在虽然有很多其他的语言,虽然面向的对象不同,对程序员的要求不同但是最底层还是在和内存打交道,可是内存中存的是什么?
就是一堆1和0,或2进制或8进制或16进制,C语言提供了位运算,以帮助我们进行更为精细的计算。
C语言提供了按位与,或,取反,异或运算方式
&与运算:
0000010
& 0000010
—————
0000010
|或运算:
00000011
| 00000101
_____________
00000111
^异或运算
00000011
^ 00000001
———————
00000010
~取反运算
~ 000000101
——————————
111111010
右移运算>>n
全体位向右移动n位,左边补零。
左移运算<<n
全体位向左移动n位,右边补零。
位运算的应用:
掩码的应用
位图的应用
。。。。。。