Auch genannt: Dualsystem, Basis-2-System, binäre Zahlendarstellung
Das Binärsystem ist ein Stellenwertsystem zur Darstellung von Zahlen mit genau zwei Ziffern: 0 und 1. Sein Zahlenwert entsteht nicht durch die Zeichenfolge allein, sondern durch die Position jedes Bits. Von rechts nach links stehen die Stellen für die Zweierpotenzen 2⁰, 2¹, 2² und so weiter. Ein Bit ist dabei eine binäre Ziffer mit dem Wert 0 oder 1; ein Byte umfasst acht Bits.NIST FIPS 197: Advanced Encryption Standard
Das Prinzip entspricht dem Dezimalsystem, nur dass dort die Stellen 1, 10, 100 und 1.000 bedeuten. Im Binärsystem verdoppelt sich der Stellenwert mit jedem Schritt nach links: 1, 2, 4, 8, 16, 32. Eine 1 aktiviert den jeweiligen Wert, eine 0 trägt nichts zur Summe bei. Für eine vorzeichenlose Zahl mit n Bits gibt es deshalb 2ⁿ unterschiedliche Bitfolgen und den Wertebereich von 0 bis 2ⁿ − 1.OpenStax: Machine-Level Information Representation
Die Schreibweise 101101₂ bedeutet also nicht „hunderttausendeinhunderteins“ wie eine Dezimalzahl. Sie wird als 1 × 2⁵ + 0 × 2⁴ + 1 × 2³ + 1 × 2² + 0 × 2¹ + 1 × 2⁰ gelesen. Daraus ergibt sich 32 + 8 + 4 + 1, also 45 im Dezimalsystem. Das kleine Tiefzeichen ₂ macht die verwendete Basis sichtbar; in Programmiersprachen und technischen Texten ist auch ein Präfix wie 0b101101 gebräuchlich.RFC 8949: Concise Binary Object Representation
Ein Bit ist damit eine Stelle in einer Darstellung, nicht automatisch eine vollständige fachliche Bedeutung. Welche Bedeutung eine Folge aus Nullen und Einsen hat, wird durch den Datentyp, ein Protokoll oder eine Kodierung festgelegt. Dieselbe Folge kann beispielsweise als vorzeichenlose Zahl, als Teil eines Zeichens, als Messwert oder als Anweisung interpretiert werden. OpenStax weist ausdrücklich darauf hin, dass eine Bitfolge ohne Information über ihre Repräsentation keine eindeutige Bedeutung trägt.OpenStax: Machine-Level Information Representation
Eine praktische Umrechnung beginnt bei der größten passenden Zweierpotenz. Für die Dezimalzahl 45 ist das 32: An der 32er-Stelle steht also eine 1. Es bleiben 13. Die 16er-Stelle erhält eine 0, die 8er- und 4er-Stelle jeweils eine 1; nach der 2er-Stelle mit 0 bleibt die 1er-Stelle mit 1. So entsteht 101101₂.
In einem System mit acht Bits lässt sich derselbe Wert mit führenden Nullen als 00101101₂ schreiben. Die Nullen ändern den Zahlenwert nicht, machen aber die festgelegte Breite sichtbar. Das ist wichtig, wenn Daten in Feldern fester Länge verarbeitet werden. Ein Byte besteht normativ aus acht Bits; daher ist eine achtstellige Darstellung wie dieses Beispiel eine naheliegende Gruppierung, aber nicht jede binäre Zahl muss genau ein Byte lang sein.NIST: Binary prefixes
Auch beim Rechnen folgt das Binärsystem einem klaren Übertrag: 1 + 1 ergibt 10₂, also 2 im Dezimalsystem. Bei einer festen Bitbreite kann ein Ergebnis jedoch mehr Stellen benötigen, als vorgesehen sind. Ob ein solcher Übertrag verworfen wird, einen Fehler auslöst oder anders behandelt wird, hängt vom jeweiligen Datentyp und der Software ab. Das Binärsystem selbst beschreibt zunächst nur die Stellenwerte; die Regeln für Vorzeichen, Bereich und Fehlerbehandlung kommen hinzu.
Computer speichern und verarbeiten Informationen als Bitfolgen, doch aus der Folge wird erst durch eine Vereinbarung eine Zahl, ein Zeichen oder ein anderer Datentyp. Bei Text ordnet eine Zeichenkodierung Zeichen und numerische Werte einander zu. Der Unicode-Standard vergibt jedem Zeichen eine eindeutige Nummer und soll gerade Konflikte zwischen unterschiedlichen Kodierungen vermeiden.Unicode Consortium: What is Unicode?
Das Binärsystem ist daher die Grundlage der Darstellung, aber nicht gleichbedeutend mit einer Zeichenkodierung. Unicode beschreibt, welches Zeichen gemeint ist; eine Kodierung wie UTF-8 legt fest, wie es als Bytefolge übertragen oder gespeichert wird. Ebenso ist eine Folge von acht Bits nicht automatisch „ein Buchstabe“: Sie kann je nach Kontext ein Byte eines Zeichens, einen Teil einer Zahl oder Steuerinformationen enthalten.
Bei mehrbyteigen Werten kommt eine weitere Konvention hinzu: die Reihenfolge der Bytes. Der IETF-Standard CBOR verwendet für mehrbyteige Werte die Netzwerk-Byte-Reihenfolge, bei der das höchstwertige Byte zuerst kommt.RFC 8949: Concise Binary Object Representation Diese Frage betrifft die Anordnung von bereits gruppierten Bits; sie ändert nicht das Stellenwertprinzip innerhalb einer binären Zahl.
Binäre Darstellung ist in digitaler Elektronik und Software praktisch, weil zwei klar unterscheidbare Zustände zuverlässig abgebildet werden können. Daraus folgt nicht, dass jede Information nur „an“ oder „aus“ ist. Bilder, Texte, Messwerte und Programme bestehen aus vielen Bits; erst festgelegte Formate, Kodierungen und Rechenregeln machen sie lesbar oder ausführbar.
Auch Größenangaben nutzen Zweierpotenzen, müssen aber genau gelesen werden. Die IEC hat Präfixe wie Ki, Mi und Gi für binäre Vielfache standardisiert: Ein Kibibit entspricht 2¹⁰, also 1.024 Bits. Davon sind dezimale Präfixe wie kbit mit 1.000 Bits zu unterscheiden.NIST: Binary prefixes Gerade bei Speicher- und Übertragungsangaben verhindert diese Unterscheidung falsche Vergleiche.
Ein Bit ist eine einzelne binäre Ziffer, das Binärsystem dagegen das gesamte Stellenwertprinzip mit Basis 2. Ein Byte ist eine Gruppe aus acht Bits und keine alternative Bezeichnung für ein Bit.NIST FIPS 197: Advanced Encryption Standard
Das Binärsystem ist auch nicht dasselbe wie eine Binärkodierung oder ein Dateiformat. Es liefert die Ziffern und Stellenwerte. Eine Kodierung ordnet Daten eine Bedeutung zu, und ein Format legt zusätzlich Strukturregeln fest. Hexadezimalzahlen sind ebenfalls keine andere Art von Daten: Sie sind eine kompaktere Schreibweise zur Darstellung von Bitfolgen, weil eine Hexadezimalziffer genau vier Bits abbilden kann.
0b, Byte/Oktett und die höchstwertige Byte-Reihenfolge.