not 0111(十進位制7)
= 1000(十進位制8)
許多程式語言,取反操作符用波浪線」~「表示。
0101(十進位制5)
or 0011(十進位制3)
= 0111(十進位制7)
按位或操作符是"|"
0101
xor 0011
= 0110
按位異或運算子是"^"
0101
and 0011
= 0001
按位與操作符是"&"
位運算子對整數在記憶體中的二進位制位進行操作pq
p&qp|q
p^q000
0001
0111
1110
1001
1移位是乙個二元運算子,用來將乙個二進位制數中的每一位全部都向乙個方向移動指定位,溢位的部分將被捨棄,而空缺的部分填入一定的值。
0001(十進位制1)
<< 3(左移3位)
= 1000(十進位制8)
左移用"<<"表示
1010(十進位制10)
>> 2(右移2位)
= 0010(十進位制2)
右移用">>"表示
package main
import "fmt"
func main()
位運算子 移位運算子
按位操作符用來操作整數基本資料型別中的單個位元 bit 就是二進位制,按位操作符會對兩個引數中對應的位 bit 執行布林運算,最終生成乙個結果。下面我們來看一下都有哪些位運算子。ok,有人看了之後可能會問,與 或 異或這三個符號不是邏輯運算子嗎,怎麼又成了位運算子?其實,我們知道,任何資訊在計算機中...
位運算 移位運算子
一 位 bit 運算子 位運算子 運算子含義 與 and 或 or 異或 取反 規則 可以把1當做true 0當做false 只有參與運算的兩位都為1,運算的結果才為1,否則就為0。只有參加運算的兩位都是0,運算的結果才是0,否則都是1。只有參加運算的兩位不同,運算的結果才為1,否則就為0。1 與運...
位運算子和移位運算子
golang中有3個位運算 按位與 按位或 按位異或 按位與 兩位全為1,結果為1,否則為0 按位或 兩位有乙個為1,結果為1,否則為0 按位異或 兩位乙個為0,乙個為1,結果為1,否則為0 例如 2 3 2 2的補碼0000 0010 3的補碼0000 0011 2 3 0000 0010 2 2...