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 |