Bitwise not意思

在計算機科學和編程中,"bitwise not"(或 "bitwise complement")是一種運算,它對一個數的每個位執行邏輯NOT操作。這意味著如果一個位是0,執行NOT操作後它會被設定為1;如果一個位是1,執行NOT操作後它會被設定為0。

在二進位表示中,這相當於對每一位取反。例如,如果一個數是0000 0001(二進位表示,對應十進位的1),執行bitwise not操作後會變成1111 1110(二進位表示,對應十進位的-2)。

在程式語言中,這個操作通常通過一個稱為"~"(波浪號)的運算符來實現。例如,在C語言中,你可以這樣使用bitwise not運算:

int a = 5; // 十進位表示為5,二進位表示為0000 0101
int b = ~a; // 執行bitwise not操作,b的值現在是-6(十進位表示)

在某些程式語言中,如Python,你可以使用bin()函式來查看一個數的二進位表示,然後手動進行取反操作:

a = 5
b = 0 ^ a
print(bin(a), "取反後為:", bin(b))

這將輸出:

00000101 取反後為: 11111011

這表示在Python中,~a的值是-6(十進位表示)。