Python での 2 進数表現
2 進数は 0 と 1 の 2つの値のみで構成されます。これらの 2つの値から、世界に存在する値の任意の組み合わせを作成できます。
2 進数を操作するために、単純なアプローチと Python 組み込み関数ライブラリを使用できます。ナイーブなアプローチは、2 進数の最後の桁から始まり、数値の他の桁への繰り越し方法に従います。一方、Python の組み込み関数は、2 進数を 10 進数に変換してから、必要な処理を行うために使用します。
Python のビットごとの
演算子は、最も効率的な方法で 2 進数を操作するのに役立ちます。これらの 2 進数は、10 進数と同じように機能し、10 進数との唯一の違いはデータ表現です。したがって、この記事では、Python でビット単位
演算子を操作する方法を説明します。
Python の 2つ 2 進数の合計
このメソッドは、最初に 2つの 2 進数を value1
と value2
として初期化します。さらに、組み込みの Python 関数を使用して、2 進数の合計を計算します。
コード例:
# python 3.x
value1 = "0b100"
value2 = "0b110"
sumOfBinaryNumber = bin(int(value1, 2) + int(value2, 2))
print(sumOfBinaryNumber[2:])
出力:
1010
Python でのビット単位の表現
この手法では、最初に 2つの 2 進数を value1 と value 2 として初期化します。さらに、ビット単位
演算を使用して、要件に従ってこれらの数値を操作します。以下のコードでは、NOT
演算には~
、XOR
演算には^
、OR
演算には|
、AND
演算には&
が用いられています。
コード例:
# 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
Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.
LinkedIn