Das binäre Zahlensystem

Schon Kinder wissen heutzutage, daß Computer mit binären Zahlen Rechnen. Wie das aber genau funktioniert weiß kaum einer, weil auch kaum jemand richtig versteht wie das binäre Zahlensystem funktioniert.
"Der Computer rechnet mit Nullen und Einsen" heiß es hier, "Alles funktioniert mit 'Strom an' und 'Strom aus'" sagt man dort. Zum Verständnis beitragen tut es jedoch nichts. Klar kann man das alles auch mathematisch abstrakt mittels Körpern und Halbgruppen formulieren, was die geistigen Barrieren allerdings nur noch verstärken würde.

Das binäre Zahlensystem ist im Grunde nichts anderes, als das vertraute Zehnersystem, bloß mit weniger Ziffern. Das für uns selbstverständliche Zehnersystem ist nur eins von Vielen, eins mit der Basis 10. Das heißt, daß jede Stelle weiter links zehnmal soviel 'wert' ist, wie ihr rechter Nachbar. Die zehn möglichen Zustände werden durch die Ziffern '0' bis '9' repräsentiert.

Wenn man z.B. die Zahl 5076 Stelle für Stelle aufschlüsselt, bekommt man:

5·103 + 0·102 + 7·101 + 6·100

Das heißt also:

5·103 = 5·1000 = 5000  (fünf Tausender)
0·102 = 0· 100 =    0  (keine Hunderter)
7·101 = 7·  10 =   70  (sieben Zehner)
6·100 = 6·   1 =    6  (sechs Einer)
                ------
                 5076
Die erste Stelle (von rechts) hat also den Wert 1 (100). Dieser Wert wird mit der Zahl multipliziert, die an der Stelle steht. In unserem Beispiel also 6. Dann nimmt man sich die nächste Stelle vor. Die hat den Wert 10 (Exponent um 1 erhöht: 101). Man nimmt wieder die Zahl mit der Wertigkeit mal und addiert dieses Ergebnis zum letzten - also in unserem Fall der 6 - hinzu. In unserem Beispiel hätten wir dann schon '76'. So geht es nun Stelle für Stelle weiter - so verstehen wir Zahlen, ohne großartig darüber nachzudenken.

"Logisch!", werden Sie sagen, weil Sie es von Klein auf so gelernt haben. Was wäre aber, wenn unser Zahlensystem nicht auf der Zahl Zehn, sondern auf der Zwei (welch geschicktes Beispiel ;-) basierte?
Jede Stelle weiter links wäre anstatt zehnmal- nur zweimal soviel Wert. Und da wir nur zwei Zahlen bräuchten, genügten auch die Ziffern '0' und '1' zur Darstellung.

Schlüsseln wir also einmal die binäre Zahl 101010 auf:

1·25 + 0·24 + 1·23 + 0·22 + 1·21 + 0·20

Das ergibt dann:
1·25 = 1·32 = 32
0·24 = 0·16 =  0
1·23 = 1· 8 =  8
0·22 = 0· 4 =  0
1·21 = 1· 2 =  2
0·20 = 0· 1 =  0
             ----
              42
Das einzige Problem an der Sache, ist unsere Fixiertheit auf das Zehnersystem. Wenn man sich die Wertigkeit der einzelnen Stellen im Binärsystem anschaut, kommt man auf Werte wie 16, 32, 4096 oder 16777216. Das sind für unser Auge krumme Zahlen, mit denen es sich nicht rechnen läßt. Im Binärsystem aber sehen diese Zahlen genauso glatt aus, wie die Wertigkeit der einzelnen Stellen in 'unserem' Zehnersystem: 16dezimal = 10000binär, 32dezimal = 100000binär, 4096dezimal = 1000000000000binär, 16777216dezimal = 100000000000000000000000binär.
Würden wir vergessen, daß es mehr als nur die zwei Ziffern '0' und '1' gibt, könnten wir ohne große Umgewöhnung im Binärsystem rechnen. Was spräche denn dagegen, die Zahl 1101binär Eintausendeinhunderteins zu nennen?

Auch das Rechnen im Binärsystem funktioniert haargenauso wie im Dezimalsystem. Hier ein Beispiel einer Addition:
  11110100                   244
+ 10111110                 + 190
----------   entspricht      ---
 110110010                   434
Gehen wir die Rechnung einmal Schritt für Schritt durch. Natürlich fängt man auch beim Addieren von Binärzahlen mit der minderwertigsten Stelle, also der rechten, an.
1. Stelle: 0 + 0 =  0
2. Stelle: 0 + 1 =  1
3. Stelle: 1 + 1 = 10
Dies ist genauso ein Übertrag wie bei der Rechnung im Dezimalsystem. Dort ist 7 + 8 = 15. Man schreibt also die 5 hin, und behält die 1 im Sinn. Das heißt also, daß bei der binären Addition von 1 + 1 = 10 die '0' hingeschrieben wird, während man die '1' im Sinn behält.
4. Stelle: 0 + 1 =  1   + 1 im Sinn = 10 (und wieder ein Übertrag)
5. Stelle: 1 + 1 = 10   + 1 im Sinn = 11 (...noch ein Übertrag)
6. Stelle: 1 + 1 = 10   + 1 im Sinn = 11 (und schon wieder dasselbe)
7. Stelle: 1 + 0 =  1   + 1 im Sinn = 10 (jetzt dürfte es aber langsam klar sein ;-)
8. Stelle: 1 + 1 = 10   + 1 im Sinn = 11
Und da wie im Dezimalsystem die linken Stellen beliebig mit Nullen aufgefüllt werden können, wird die letzte 3 (11binär) ganz normal hingeschrieben.

Die restlichen Rechenoperationen lassen sich nun auch ganz einfach herleiten, wenn man sich nur einmal klar wird, was genau man tut, und warum, wenn man im Dezimalsystem rechnet.

Und jetzt kann man auch den Grund erkennen, warum das Binärsystem so gut für Computer geeignet ist: Es kommt mit zwei Zuständen aus, nämlich '0' und '1', den beiden einzigen Ziffern des Zahlensystems auf der Basis Zwei. Im Computer werden diese beiden Zustände natürlich durch Strom und kein Strom repräsentiert.

Natürlich, werden Sie sagen, könnte man doch einen Rechner konstruieren, der im Dezimalsystem rechnet, und für jede Speicherzelle, in der eine Stelle einer Zahl gespeichert wird, nicht nur 'Stron' oder 'kein Strom', sondern insgesamt zehn verschiedene Zustände (repräsentiert durch verschieden hohe Ladungen) zuläßt. So etwas hat es natürlich gegeben - in der Anfangszeit, aufgrund der Fixiertheit auf das Zehnersystem. Jedoch stellte sich das Abspeichern und Auswerten der verschiedenen Ladungspotentiale als viel zu fehlerträchtig heraus, so daß man schließlich komplett auf das Binärsystem umgestiegen ist.

Versuchen Sie nun einmal, eine Addition mit einem Zahlensystem auf der Basis 5 (Ziffern '0' bis '4') durchzuführen. Sie werden sehen, so schwer ist das gar nicht. Auch sind Zahlensysteme mit höherer Basis als 10 möglich. Im Hexadezimalsystem rechnet man mit der Basis 16. Und da eine Stelle natürlich nicht mehr als nur ein Zeichen lang sein darf (wie soll man sonst unterscheiden, wo sie zuende ist?), half man sich mit den Buchstaben 'a' bis 'f' aus, die die fehlenden Zahlenzeichen für '10' bis '15' (dezimal) ersetzen. Auch in diesem System läßt es sich problemlos rechnen, und die alten Babylonier hatten gar ein Zahlensystem mit der Basis 60!

Wir hoffen, dieser kleine Artikel hat Ihnen einen kleinen Einblick und vielleicht auch einen Einstieg in die Grundlagen der Computertechnik verschafft.

Artikel: Mike Coenen