Python: Binäroperationen
Willemers Informatik-Ecke
Python beherrscht den Umgang mit Zahlen auf Bit-Ebene. Binären Zahlenliteralen wird das Präfix 0b vorangestellt. Aus praktischen Gründen werden vier Bits zu einer hexadezimalen Ziffer zusammengestellt. Da diese maximal die Zahl 15 darstellen kann, werden Buchstaben für die zweistelligen Zahlen verwendet, also ein A oder a für die 10. In seltenen Fällen werden auch oktale Zahlen verwendet. Sie fassen drei Bits zusammen und umfassen die Ziffern 0 bis 7. Der Präfix für Oktalzahlen ist 0o.

Zahlendarstellung

Python kann Zahlenliterale nicht nur dezimal sondern auch binär, oktal oder hexadezimal darstellen. Die Lesbarkeitsunterstriche können an beliebiger Stelle eingeführt werden. Sie werden vom Interpreter einfach überlesen und nicht kontrolliert.

Bytearray

Ein Bytearray ist, wie der Name schon vermuten lässt, ein Array von Bytes. Es muss nicht anfänglich in der Länge festgelegt werden. Für den Zugriff werden eckige Klammern verwendt.
d = bytearray.fromhex("2ef013")

Bitoperationen

bin(12) ist '0b1100' Maskieren wird über das &-Symbol erreicht. Es ist eine bitmäßige AND-Verknüpfung. Eine Verknüpfung mit dem senkrechten Strich bewirkt eine bitmäßige OR-Verknüpfung. Eine Verknüpfung mit dem Dachsymbol bewirt eine bitmäßige XOR-Verknüpfung.