Binärzahlendarstellung in Python
Binäre Zahlen bestehen nur aus zwei Werten, 0 und 1. Aus diesen beiden Werten können wir beliebige Kombinationen von Werten erstellen, die auf der Welt existieren.
Um mit den binären
Zahlen zu arbeiten, können wir den naiven Ansatz und die in Python integrierten Funktionsbibliotheken verwenden. Der naive Ansatz beginnt mit den letzten Ziffern der Binärzahlen und folgt der Carry-Forward-Methode auf andere Ziffern der Zahl, während die in Python integrierten Funktionen verwendet werden, um die binären
Zahlen in Dezimalzahlen umzuwandeln und dann die gewünschten auszuführen Aktionen.
Python-Bitweise-Operatoren helfen Ihnen, mit Binärzahlen auf die effizienteste Weise zu arbeiten. Diese Binärzahlen funktionieren genauso wie Dezimalzahlen, und der einzige Unterschied zur Dezimalzahl ist die Datendarstellung. In diesem Artikel werden wir also sehen, wie man die bitwise
-Operatoren in Python manipuliert.
Summe zweier binärer
Zahlen in Python
Diese Methode initialisiert zuerst die beiden binären
Zahlen als value1
und value2
. Darüber hinaus berechnen wir mithilfe der integrierten Python-Funktionen die Summe der Binärzahlen.
Beispielcodes:
# python 3.x
value1 = "0b100"
value2 = "0b110"
sumOfBinaryNumber = bin(int(value1, 2) + int(value2, 2))
print(sumOfBinaryNumber[2:])
Ausgabe:
1010
Bitweise Darstellung in Python
Bei dieser Technik werden wir zunächst die beiden Binärzahlen als Wert 1 und Wert 2 initialisieren. Außerdem werden wir diese Zahlen mit den bitweisen
Operationen nach Bedarf manipulieren. Im folgenden Code wird ~
für die NOT-Operation verwendet, ^
für die XOR-Operation, |
für ODER-Verknüpfung und &
für UND-Verknüpfung.
Beispielcodes:
# 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))
Ausgabe:
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