HOWTO · Python

Python 中的二進位制數表示

本教程演示如何使用內建函式對二進位制數求和,以及如何將按位運算子應用於二進位制數以運算元據

本頁內容

Binary 數字只包含兩個值,0 和 1。從這兩個值中,我們可以建立世界上存在的任何值的組合。

要處理二進位制數字,我們可以使用簡單的方法和 Python 內建函式庫。樸素的方法從二進位制數的最後一位數字開始,並遵循結轉方法到數字的其他數字,而 Python 內建函式用於將二進位制數字轉換為十進位制數,然後執行所需的操作行動。

Python 按位運算子可幫助你以最有效的方式處理二進位制數。這些二進位制數的作用與十進位制數相同,與十進位制數的唯一區別是資料表示形式。因此,在本文中,我們將看到如何在 Python 中操作按位運算子。

Python 中兩個二進位制數字的總和

此方法將首先將兩個 binary 數字初始化為 value1 和 value2。此外,通過使用內建的 Python 函式,我們將計算二進位制數的總和。

示例程式碼:

# python 3.x
value1 = "0b100"
value2 = "0b110"

sumOfBinaryNumber = bin(int(value1, 2) + int(value2, 2))

print(sumOfBinaryNumber[2:])

輸出:

1010

Python 中的按位表示

在這種技術中,我們將首先將兩個二進位制數初始化為 value1 和 value2。此外,通過使用按位操作,我們將根據要求操作這些數字。在下面的程式碼中,~用於非運算,^用於異或運算,|用於邏輯或運算,而 & 用於邏輯與運算。

示例程式碼:

# python 3.x
value1 = int("1101", 2)
value2 = int("00100110", 2)
print("value1 & value2 =", bin(value1 & value2))
print("value1 |  value2 =", bin(value1 | value2))
print("value1 ^ value2 =", bin(value1 ^ value2))
print("~value1 ^ value2 =", bin(~value1 ^ value2))
print("~value1 =", bin(~value1))
print("~value2 =", bin(~value2))

輸出:

a & b = 0b100
a |  b = 0b101111
a ^ b = 0b101011
~a ^ b = -0b101100
~a = -0b1110
~b = -0b100111