Warum brauchen wir oktale und hexadezimale Zahlensysteme, wenn ein Computer nur das Binärsystem versteht?
2
3
8
2
2
4
2
1
2
2
0
1
2
2
4
2
1
2
2
0
1
Hexadezimal ————— Oktal
Binäre Zahlen mit der Basis 2 bestehen nur aus Nullen und Einsen, entsprechend lang sind sie. Hexadezimalzahlen (base-16) sind sehr viel kürzer, machen das Umwandeln in binäre oder vice versa aber zum Kinderspiel, weil vier binäre Ziffern (binary digits or bits) zusammen in der Regel einer hexadezimalen Ziffer entsprechen, wobei die vier Ziffern von rechts nach links 1 oder 0 mal 2³ 2² 2¹ 2⁰ oder 8 4 2 1 sind. Hexadezimale Ziffern reichen von 0 bis 9 und A bis F (siehe oben links), die Buchstaben stellvertretend für 10 bis 15. Oktale Ziffern reichen nur von 0 bis 7, letztere wie oben rechts gezeigt binär 111.
1001 1100 1101 0011 1011 1111 0000 0001 ist nicht nur unendlich lang, sondern auch ziemlich unübersichtlich. Wenn man jeden der 4-Bit-Blöcke in hexadezimale Ziffern umwandelt, verliert die Zahl aber ihren Schrecken:
9CD3BF01 (also nur 8 statt 24 Ziffern). Die entsprechende Dezimalzahl ist 2.631.122.689 mit 10 Ziffern, die oktale Zahl 23464737401 mit 11 Ziffern. Zum Umwandeln von Hexadezimalzahlen in Dezimalzahlen muss man jede Ziffer von rechts nach links als das x-fache der 16er-Potenz des jeweiligen Stellenwertes minus 1 betrachten und dann als Multiplikatoren zusammenzählen. Um das dezimale Ergebnis zu überprüfen, muss man also so rechnen: 9*16⁷+12*16⁶+13*16⁵+3*16⁴+11*16³+15*16²+0x16¹+1*16⁰=
2.415.919.104+201.326.592+13.631.488+196.608+45.056+3.840+0+16=2.631.122.689 !!!
Im Oktalsystem reichen die Zahlen nur von 0 bis 7, was heißt, dass die dezimale 8 (binär 1000) einer oktalen 10 entspricht, die dezimale 16 (binär 10000, hexadezimal E bzw. 14) einer oktalen 20 usw.