Rechnen im Binärsystem
Ein Computer, der Zahlen nur speichern kann, wäre nutzlos. Er muss damit rechnen. Die gute Nachricht: Im Binärsystem ist schriftliches Rechnen viel einfacher als im Dezimalsystem – es gibt nur vier Fälle.
Schriftliche Addition
Du addierst wie in der Grundschule: Stelle für Stelle von rechts nach links, mit Übertrag.
Die Additionstabelle im Binärsystem hat nur vier Einträge:
| Ergebnis | schreibe | Übertrag | ||
|---|---|---|---|---|
| 0 + 0 | 0 | 0 | 0 | |
| 0 + 1 | 1 | 1 | 0 | |
| 1 + 0 | 1 | 1 | 0 | |
| 1 + 1 | 10 | 0 | 1 |
Kommt noch ein Übertrag dazu, kann auch 1 + 1 + 1 = 11 entstehen: schreibe 1, übertrage 1.
0 1 1 0 (6)
+ 0 1 1 1 (7)
Ü 1 1
---------
1 1 0 1 (13)
Rechts: 0 + 1 = 1. Dann 1 + 1 = 10: schreibe 0, übertrage 1. Dann 1 + 1 + 1 = 11: schreibe 1, übertrage 1. Links: 0 + 0 + 1 = 1.
Rechne die Aufgaben schriftlich. Klicke dazu auf die gestrichelten Felder für den Übertrag (Ü) und das Ergebnis. Prüfe danach. Kontrolliere zusätzlich im Kopf: Rechne beide Zahlen ins Dezimalsystem um und addiere.
Tipp: Wo fange ich an?
Immer ganz rechts. Schreibe einen Übertrag immer über die nächste Stelle links, bevor du dort weiterrechnest.
Übe weiter mit Zufallsaufgaben, zuerst mit 4 Bit. Wenn du drei Aufgaben hintereinander ohne Fehler schaffst, wechsle zu den 8-Bit-Aufgaben darunter.
Wenn das Ergebnis nicht passt: der Überlauf
Im Prozessor hat jede Zahl eine feste Anzahl von Bits. Diese Speicherplätze im Prozessor heißen Register. Was passiert, wenn das Ergebnis mehr Stellen braucht, als das Register hat?
Das Register ist hier 4 Bit breit. Sage vor dem Rechnen voraus, ob das Ergebnis hineinpasst. Rechne dann und beantworte die Frage nach dem Überlauf.
Passt das Ergebnis einer Rechnung nicht mehr in die feste Anzahl von Bits, entsteht ein Überlauf. Der Übertrag aus der höchsten Stelle geht verloren. Das Ergebnis im Register ist dann falsch.
Mit 4 Bit lassen sich nur die Zahlen 0 bis 15 darstellen. 9 + 8 = 17 ergibt im 4-Bit-Register 0001₍₂₎ = 1.
Überläufe sind nicht nur Theorie. Im Spiel Pac-Man wurde die Levelnummer in einem Byte gespeichert. In Level 256 läuft der Zähler über – das Spielfeld wird zur Hälfte mit Zeichensalat gefüllt und das Spiel ist nicht mehr zu schaffen.
Multiplizieren
Mal 2 ist im Binärsystem besonders leicht: Hänge hinten eine 0 an. Alle Ziffern rücken eine Stelle nach links und sind doppelt so viel wert – genau wie „mal 10“ im Dezimalsystem.
101₍₂₎ · 10₍₂₎ = 1010₍₂₎ (5 · 2 = 10)
Allgemein multiplizierst du schriftlich wie im Dezimalsystem – nur dass das Einmaleins aus 0 · 0, 0 · 1 und 1 · 1 besteht. Für jede 1 im zweiten Faktor schreibst du den ersten Faktor verschoben auf und addierst:
1 0 1 · 1 1 (5 · 3)
---------
1 0 1 101 · 1, um eine Stelle verschoben
1 0 1 101 · 1
---------
1 1 1 1 (15)
Multiplizieren besteht also nur aus Verschieben und Addieren – genau das, was ein Prozessor schnell kann.
- Berechne 1011₍₂₎ · 100₍₂₎ ohne zu rechnen, nur durch Anhängen. Kontrolliere im Dezimalsystem.
- Berechne schriftlich 110₍₂₎ · 101₍₂₎. Kontrolliere im Dezimalsystem.
Tipp zu 1
100₍₂₎ ist 4, also 2 · 2. Wie viele Nullen musst du anhängen?
Und Subtrahieren? Prozessoren haben dafür oft gar kein eigenes Rechenwerk – sie addieren stattdessen eine geschickt umgeformte Zahl, das Zweierkomplement. In einem 4-Bit-Register gilt: 7 − 3 ist dasselbe wie 7 + 13, denn 7 + 13 = 20, und davon bleiben nach dem Überlauf 20 − 16 = 4 übrig. Der Überlauf ist hier also kein Fehler, sondern ein Trick! Findest du heraus, welche Zahl man für „− 5“ addieren muss?