golang中位運算子與移位

2022-07-10 18:12:10 字數 797 閱讀 7612

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...