位運算子規律小結

2022-09-05 01:39:10 字數 376 閱讀 2591

1,異或運算^

1)0和任何數異或都得到原來的數

2)兩個相同的數字異或得0.利用該性質常用來尋找數稱對出現時缺失的某乙個數

異或運算可以用來

1)判斷乙個數字是否是偶數(二進位制表示中只有一位是0,n^(n-1)=0)

2)尋找缺失的數字,如0-n中缺失的數字

3)不使用第三方變數交換兩個變數的值

4)使用位運算來實現常見的運算子,如兩個數相加,計算兩個數字的平均值等(蔣&和^,以及移位結合起來考慮))

5)計算乙個數值的二進位制中包含1的個數(p70)

6)將乙個整數的奇偶位互換

((x&0xaaaaaaaa)>>1)|((x&0x55555555)<<1)

C 位運算子小結

位 與 and 位 異或 位 或 or 位 取反 2 移位運算子 右移 優先順序位 與 位 或 和位 異或 運算子都是雙目運算子,其結合性都是從左向右的,優先順序高於邏輯運算子,低於比較運算子,且從高到低依次為 0 1 0 0 0 0 1 0 0 1 1 1 00100 運算通常用於二進位製取位操作...

位運算子,「,」逗號運算子,

位運算子有 按位與 按位或 按位異或 按位取反 優先順序從高到低,依次為 按位與運算有兩種典型用法,一是取乙個位串資訊的某幾位,如以下 擷取x的最低7位 x 0177。二是讓某變數保留某幾位,其餘位置0,如以下 讓x只保留最低6位 x x 077。按位或運算的典型用法是將乙個位串資訊的某幾位置為1。...

運算子之位運算子

右移 負數 無符號右移 或 異或 與 非 說明 位運算子都是作用在二進位製上的 比如 n 50 n 1 結果是多少?100 n 2 結果是多少?200 n 5 結果是多少?1600 為什麼會是這樣的呢?運算的邏輯如下 1,n 50 2,n的二進位制是 0011 0010 3,0011 0010 左移...