按位操作符 用來操作整數基本資料型別中的單個 bit ,對兩個引數中對應的位執行布林代數計算,最終生成乙個結果
1. 二元操作符
如果兩個輸入位都是1, 則按位 與 操作符& 生成乙個輸出位1, 否則生成乙個輸出位0,
如果兩個輸入位有乙個是1, 則按位 或 操作符 | 生成乙個輸出位1, 只有兩個輸入位都是0時, 才會生成乙個輸出位0.
如果 輸入位的某乙個是1, 但不全者是1,那位按位 異或 操作^ 生成乙個輸出位1,
2. 一元操作符
按位 非 操作 ~也稱為取反操作符,它只對乙個運算元進行操作, 若輸入0, 則輸出1, 若輸入1, 則輸出0.
3. 按位操作符可與等號= 聯合使用, 以便合併計算和賦值: &=, |=, ^= 都是合法的, 由於~ 是一元運算子,所以不可與 = 聯合使用.
4. 將布林型別 作為一種單位元值對待,有些獨特。可以對它執行近按位 與, 或,異或運算,但不能執行按位 非(為了避免與邏輯 非混淆)
對於布林值,按位操作符具有與邏輯操作符相同的效果,只是它們不會中途 「短路」。 針對布林值進行的按位運算為我們新增了乙個 異或 邏輯操作符,它並未包括在 邏輯操作的列表中,
解釋看乙個示例:
c 按位操作符
位運算是指按二進位制進行的運算。在程式中,常常需要處理二進位制位的問題。c c 語言提供了6個位操作運算子。這些運算子只能用於整型運算元,即只能用於帶符號或無符號的char,short,int與long型別。在實際應用中,建議用unsigned整型運算元,因為帶符號運算元可能因為不同機器結果不同。c...
Java移位操作符以及按位操作符
按位操作符 針對兩個整數引數中的對應位執行布林代數運算,並生成乙個結果。按位與 如果兩個輸入位都是1則生成乙個輸出位1,否則生成乙個輸出位0。按位或 如果兩個輸入位只要有一位是1則生成乙個輸出位1.否則生成乙個輸出位為0。按位異或 如果兩個輸入位只有其中一位是1那麼生成輸出位1,否則生成乙個輸出位為...
C C 關於按位操作符
這一篇就簡單講下c 按位操作符使用方法。一 移位操作符 2位元組16位下 1.左移操作符 句法 value shift 將指定值的所有位向左移動指定位數並將結果返回 例如 int n1 568 int n2 n1 3 值也可以用字面值 int n2 568 3 std cout n2 std end...