按位取反運算子~
每位的值取反
~(10010110) = 01101001
按位與運算子&
對應位只有2個運算元都為1結果才為1
(10001011)&(10111101)=10001001
用法:取掩碼
我們經常會看到**中有
a & 0xff
就是將低16位之外的位全部置0,僅保留低16位的值
按位或運算子|
對應位只要有1個運算元為1結果就為1
(10001011)|(10111101)=10111111
用法:開啟位
譬如mask = 0x00000100任意值 rand |= mask 其實就是將從低位開始第三位設定成1,其它位保持不變
按位異或運算子^
對應位相同則為0,不相同結果為1
(10001011)^(10111101)=00110110
用法:轉置位
移位運算子
左移位<<
每一位向左移x位
例如:
a = 0x00000001a<<2
這時a = 0x00000100
右移位》
類似左移位
C語言位運算子
一.c語言位運算子簡介 c語言的位運算子有六種,分別是 右移運算子 左移運算子 按位與運算子 按位或運算子 按位異或運算子 按位取反運算子 這些運算子都是對於基本資料型別的二進位制位進行操作的,這裡我們只討論整型資料型別的位運算 二.各個運算子的具體使用 右移運算子 將整數的二進位制形式整體向右移動...
C語言 位運算子
位運算是指按二進位制進行的運算。在系統軟體中,常常需要處理二進位制位的問題。c語言提供了6個位操作運算子。這些運算子只能用於整型運算元,即只能用於帶符號或無符號的char,short,int與long型別。c語言提供的位運算子列表 1 按位與 運算子 按位與是指 參加運算的兩個資料,按二進位制位進行...
C語言 位運算子
位操作符,主要包括 與,或 符 取反符 移位符 異或符 開始前先看一段實現二進位制輸出的 方便觀察位操作 參考鏈結知乎作者 碼農愛學習 void printf bin int num printf 每8位加個空格,方便檢視 printf r n 與0清0,與1不變 功能1 提取位資料 功能2 清除 ...