swift-位運算符

1. 位取反運算符( ~

位取反運算符(~ )是對所有位的數字進行取反操作

2. 位與運算符( &

位與運算符(& )可以對兩個數的比特位進行合併。它會返回一個新的數,只有當這兩個數都是 1 的時候才能返回 1

3. 位或運算符(|

位或運算符(|)可以對兩個比特位進行比較,然後返回一個新的數,只要兩個操作位任意一個爲 1 時,那麼對應的位數就爲 1 。

4. 位異或運算符( ^

位異或運算符,或者說“互斥或”( ^ )可以對兩個數的比特位進行比較。它返回一個新的數,當兩個操作數的對應位不相同時,該數的對應位就爲1

5. 位左移和右移運算符

  • 位左移運算符( << )和位右移運算符(>> )可以把所有位數的數字向左或向右移動一個確定的位數。

  • 位左移和右移具有給整數乘以或除以二的效果。將一個數左移一位相當於把這個數翻倍,將一個數右移一位相當於把這個數減半

6. 無符號整數的移位操作

  • 已經存在的比特位按指定的位數進行左移右移

  • 任何移動超出整型存儲邊界的位都會被丟棄

  • 0 來填充向左或向右移動後產生的空白位

7. 有符號整數的移位操作

  • 有符號整數使用它的第一位(所謂的符號位)來表示這個整數是正數還是負數。符號位爲 0 表示爲正數1 表示爲負數

  • 其餘的位數(所謂的數值位)存儲了實際的值。有符號正整數和無符號數的存儲方式是一樣的,都是從 0 開始起。

  • 但是負數存儲方式略有不同。它存儲的是 2n次方減去它的絕對值,這裏的 n數值位位數

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章