Python での 2 進数表現

Abdul Jabbar 2023年1月30日
  1. Python の 2つ 2 進数の合計
  2. Python でのビット単位の表現
Python での 2 進数表現

2 進数は 0 と 1 の 2つの値のみで構成されます。これらの 2つの値から、世界に存在する値の任意の組み合わせを作成できます。

2 進数を操作するために、単純なアプローチと Python 組み込み関数ライブラリを使用できます。ナイーブなアプローチは、2 進数の最後の桁から始まり、数値の他の桁への繰り越し方法に従います。一方、Python の組み込み関数は、2 進数を 10 進数に変換してから、必要な処理を行うために使用します。

Python のビットごとの演算子は、最も効率的な方法で 2 進数を操作するのに役立ちます。これらの 2 進数は、10 進数と同じように機能し、10 進数との唯一の違いはデータ表現です。したがって、この記事では、Python でビット単位演算子を操作する方法を説明します。

Python の 2つ 2 進数の合計

このメソッドは、最初に 2つの 2 進数を value1value2 として初期化します。さらに、組み込みの 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 Jabbar
Abdul Jabbar avatar Abdul Jabbar avatar

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

関連記事 - Python Binary