c 位操作符

2021-06-08 11:18:02 字數 942 閱讀 6797

我們知道,任何資訊在計算機中都是以二進位制的形式儲存的。位操作符就是對資料按二進位制進行運算的操作符。c#語言中的位操作符有:

● & 與

● | 或

● ^ 異或

● ~ 取補

● << 左移

● >> 右移

其中,取補只有乙個運算元,而其它的位操作符都有兩個運算元。這些運算都不會產生溢位。位操作符的運算元為整型或者是可以轉換為整型的任何其它型別。

與運算運算元按二進位制進行與運算,運算規則為:

0&0=0

0&1=0

1&0=0

1&1=1

這說明,除了兩個位均為1,與運算結果為1,其它任何情況下與運算結果均為0。比如,2和10進行與運算:

2的二進位制表示: 00000010

10的二進位制表示:00001010

與運算結果: 00000010

所以,2&10的結果為2。

或運算運算元按二進位制位進行或運算,運算規則為:

0|0=0

0|1=1

1|0=1

1|1=1

這說明,除了兩個位均為0,或運算結果為0,其它情況下或運算結果均為1。比如,2和10進行或運算:

2的二進位制表示: 00000010

10的二進位制表示:00001010

或運算結果: 00001010

所以,2|10的結果為10。

異或運算

運算元按二進位制位進行異或運算,運算規則為:

0^0=0

0^1=0

1^0=0

1^1=1

這說明,當兩個位相同時,異或運算結果為0;不相同時異或運算結果為1。比如,2和10進行異或運算:

2的二進位制表示: 00000010

10的二進位制表示:00001010

異或運算結果: 00001000

所以,2^10的結果為8。

C位操作符

1.按位與 如果兩個位都是1,則結果為1 否則結果為0 示例 5 2 00000101 5的二進位制 00000010 2的二進位制 00000000 5 2結果二進位制,10進製結果為0 2.按位或 如果兩個位至少有乙個是1,則結果為1 否則結果為0 示例 5 2 00000101 5的二進位制 ...

c語言操作符 位操作符 移位操作符

1 按位操作符 1.1 按位 與 雙目運算子 僅當兩個運算元都為1時,結果為1,否則為0。參與運算的數以補碼方式出現。例 9 5 1 0000 1001 9的補碼 0000 0101 5的補碼 0000 0001 1的補碼 應用 a 通常將某些位清零或保留某些位。例如 將a的高八位清零,保留低八位,...

c 按位操作符

位運算是指按二進位制進行的運算。在程式中,常常需要處理二進位制位的問題。c c 語言提供了6個位操作運算子。這些運算子只能用於整型運算元,即只能用於帶符號或無符號的char,short,int與long型別。在實際應用中,建議用unsigned整型運算元,因為帶符號運算元可能因為不同機器結果不同。c...