C語言 operator 位元運算子教學

C語言 operator位元運算子教學

 位元運算子簡介 
NOT (~):反相位元, 取補數.
AND (&):有0則0, a&0=0, a&1=1.
OR   (|) :有1則1, a|0 =a, a^1=1.
XOR (^):有1則1, a^0=a, a^1=~a.
向右移位:(>>), a >> n 即 a 向右移 n 個 bits.
向左移位:(<<), a << n 即 a 向左移 n 個 bits.

 

 位元運算子範例 
2.1 a << 2
將a的值以二進位方式向左移2位元;0000 0011 => 0000 1100 則a的值由3變為12;即a乘以2的2次方,若向左移n位,即為a乘以2的n次方。
2.2 a >> 2
將a的值以二進位方式向右移2位元;0000 1011 => 0000 0010 則a的值由11變為2;即a除以2的2次方;若向右移n位,即為a除以2的n次方。

 

延伸閱讀:

C語言副程式教學(一)

MAC Modbus 教學

Xcode教學 – 使用Xcode建立Iphone App按鈕功能事件

C語言RS232通訊程式範例教學

C#倒數計時器範例教學