Hexadezimal-System

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

In einem Hexadezimalsystem werden Zahlen in einem Stellenwertsystem zur Basis 16 dargestellt. Während „unser“ vertrautes Dezimalsystem Zahlenwerte aus Zehnerpotenzen wie Einern (100), Zehnern (101), Hundertern (102) und Tausendern (103) zusammensetzt, tut das Hexadezimalsystem dies mit Potenzen der Zahl 16 und bildet Einer (160), Sechszehner (161), Zweihundertsechsundfünfziger (162), Viertausendsechsundneunziger (163) und so weiter.

Der Vorteil des Hexadezimalsystems ist es, dass man jeweils 4 Ziffern des Binärsystems (also eines Stellenwertsystems zur Basis 2) zu einer Hexadezimalziffer zusammenfassen kann und damit Binärzahlen kompakt aufschreiben kann. Nachteilig ist, dass man nicht mit 10 Ziffern auskommt und sich etwas ausdenken muss, um die Stellenwerte 10 bis 15 aufschreiben zu können. Als Lösung ist es üblich, die Buchstaben A bis F als Extraziffern zu verwenden:

Stellenwert 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Hex-Ziffer 0 1 2 3 4 5 6 7 8 9 A B C D E F
Binärwert 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Wenn man in einem Fließtext Zahlenwerte notiert und nicht klar ist, welches Zahlensystem gebräuchlich ist, fügt man den Wert der Basis tiefgestellt hinzu, z. B. 12310 für einhundertdreiundzwanzig oder 49816 für die Zahl 4 9 8 im Hexadezimalsystem (eine flüssige Sprechweise wie im Dezimalsystem gibt es für Hexadezimalzahlen nicht).

In den 1960er Jahren war an Stelle des Hexadezimalsystems auch das Oktalsystem gebräuchlich, das zur Basis 8 arbeitet und mit den Ziffern von 0 bis 7 auskommt. Mit ihm kann man jeweils drei Binärstellen zu einer Oktalstelle zusammenfassen. Heute findet man es nur noch selten (z.B. zum Notieren der Berechtigungen einer Datei in Unix).

Beispiele

Hexadezimal nach Dezimal

Die Hexadezimalzahl 12316 setzt sich aus drei Ziffern zusammen. Die letzte Ziffer hat den Stellenwert 1, die vorletzte Ziffer den Stellenwert 16 und die drittletzte (also die erste) Ziffer den Stellenwert 256. Der dezimale Wert beträgt also

12316 = 1·256 + 2·16 + 3 = 256 + 32 + 3 = 29110.

Dezimal nach Hexadezimal

Um die Dezimalzahl 15243 ins Hexadezimalsystem umzurechnen, suchen wir uns zuerst die größte Potenz von 16, die kleiner oder gleich der Ausgangszahl ist. Hier ist das 163=4096. Damit wissen wir auch schon, dass der Hexadezimalwert 4 Ziffern besitzen wird (für 163 bis für 160).

Wir dividieren 15243 durch 4096 und erhalten 3,7…. An der Stellenposition für 163 befindet sich also eine 3. Diese drei Viertausendsechsundneunziger ziehen wir von der Ausgangszahl ab und erhalten

15243 - 3·4096 = 15243 - 12288 = 2955

Nun schauen wir, wieviele Zweihundertsechsundfünfziger sich aus 2955 bilden lassen: 2955÷256=11,5…, das ergibt den Stellenwert 11 an der Position für 162, wir notieren also ein B. Als Rest bleibt uns

2955 - 11·256 = 139

Die Division 139 ÷ 16 ergibt 8 mit Rest 11. Für die Sechszehnerposition erhalten wir also eine 8 und an der Einerposition bleiben 11 oder B übrig.

Das Ergebnis ist: 1524310 = 3B8B16.

Hexadezimal nach Binär

Für diese Umrechnung muss man nicht rechnen. Es reicht, die Hexadezimalziffern gemäß der oben stehenden Tabelle durch die entsprechende Vierergruppe aus Binärziffern zu ersetzen:

3B8B16 = 0011 1011 1000 10112

Mit etwas Übung machen Sie das im Kopf!

Binär nach Hexadezimal

Auch hier müssen Sie nicht rechnen. Bilden Sie, rechts beginnend, Vierergruppen aus den Ziffern einer Binärzahl und ersetzen Sie sie durch die entsprechende Hexadezimalziffer. Wenn Ihnen am Beginn der Binärzahl Ziffern fehlen, dann füllen Sie einfach mit Nullen auf:

Ausgangswert: 110110101110010010110012
Gruppieren: 0110 1101 0111 0010 0101 1001
Ersetzen: 6 D 7 2 5 9
Ergebnis: 6D725916


Siehe auch

Weblinks