Bits und Bytes: Grundlagen der Zahlensysteme

Aus C64-Wiki
Zur Navigation springenZur Suche springen
Baustelle Dieser Artikel befindet sich im Aufbau und ist vorläufig als Entwurf einzustufen.

Im Gegensatz zu den meisten Menschen arbeiten Computer nicht in einem von Zehnerpotenzen (daher Zehnersystem oder Dezimalsystem bezeichnet) geprägten Zahlensystem von Einsern, Zehnern, Hundertern, Tausendern etc. Computer können nämlich nur Nullen und Einsen, im Sinne von Strom weg oder Strom da, als Informationen verarbeiten (siehe Bit und Binärcode). Dieses sogenannte Dualsystem (auch Zweiersystem oder Binärsystem = engl. Binary numeral system) verwendet also lediglich genau zwei unterschiedliche Wertigkeiten. Mathematisch nicht exakt, aber ziemlich verbreitet sind auch die Begriff Binärzahl oder Binärdarstellung.

Eine einfache Rechenoperation, die Addition, sieht dann so aus:

   dual  dezimal
   1011    11 
+  1101    13
----------------
= 11000    24

Man muss also so rechnen als gäbe es statt den herkömmlichen Ziffern von 0 bis 9 nur die Ziffern 0 und 1, also 0+0=0, 0+1=1 und 1+1=10. Der Mathematiker nennt so etwas dann ein Zahlensystem zur Basis 2 und unser normales Zahlensystem, das Dezimalsystem, wird dann als eines zur Basis 10 bezeichnet, da es mit den Ziffern von 0 bis 9 auskommt. Oft findet man bei Taschenrechnern die Funktion mit Zahlensysteme anderer Basis zu rechnen. Für Dualzahlen ist etwa die Basis 2 einstellbar und braucht so nicht zu Fuß zu rechnen.

Da diese Zahlenkolonnen aus Nullen und Einsen schwer lesbar und unhandlich sind, aber in Hinblick auf konkrete Bitzuordnungen und -wertigkeiten das Dezimalsystem nicht praktikabel ist, hat sich das hexadezimale Zahlensystem (kurz als hex bezeichnet) verbreitet. Es verwendet 16 Ziffern von 0 bis 9 und A bis F.
Eine einfache Rechnung sieht im Vergleich zu dezimalem Rechnen dann so aus:

  hex dezimal
  25    37
+ 1F    31
-------------
= 44    68

Eine hexadezimale Zahl lässt sich leicht als eine Dualzahl darstellen:

 44 (hex)
 ||
 |+------- 0100
 +---- 0100
-----------------
       01000100 (dual)

Weblinks[Bearbeiten | Quelltext bearbeiten]

WP-W11.png Wikipedia: Dualsystem