我們知道,任何資訊在計算機中都是以二進位制的形式儲存的。位操作符就是對資料按二進位制進行運算的操作符。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...