C語言按位運算符
- 二進制反碼或按位取反:~
一元運算符~是逐位將1變為0,0變為1
Eg: ~(1001 1010)
Result:(0110 0101)
- 按位與:&
二元運算符&是逐位比較兩個運算對象,生成一個新值.對每一個位上來說,只有當全為1時,才為1,否則為0;(也就是全真為真,一假則假)
Eg: (1001 0011) & (0011 1101)
Result:(0001 0001)
- 按位或:|
二元運算符|是逐位比較兩個運算對象,生產一個新值。對每一個位上來說,當有一個為1時,就為1,否則為0.(也就是一真則真,全假為假)
Eg: (1001 0011) & (0011 1101)
Resault:(1011 1111)
- 按位異或:^
二元運算符^是逐位比較兩個運算對象。對於每一個位,總有相異為1,相同為0;
Eg: (1001 0011) & (0011 1101)
Resault:(1010 1110)