Hexadezimalsystem

In der Informationstechnologie wird das Dualsystem verwendet, um damit Rechenoperationen durchzuführen. Das Dualsystem hat allerdings einen großen Nachteil. Selbst für kleine Zahlen werden riesige Bitlängen benötigt, z.B. 11111111 für die Dezimalzahl 255. Damit man mit möglichst wenig Ziffern große Zahlenwerte darstellen kann, hat sich das Hexadezimalsystem etabliert. Das Zahlensystem hat dabei folgende Merkmale:

  • Ziffern: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Andere Ziffern sind ungültig.
  • Basis: 16, da 16 verschiedene Ziffern existieren.
  • Stellenwerte: Potenzen der Basis 16

Die Ziffern A - F haben dabei in Dezimal umgerechnet folgende Werte:

  • A: 10
  • B: 11
  • C: 12
  • D: 13
  • E: 14
  • F: 15

Das System: Im Hexadezimalsystem existieren 16 verschiedene Ziffern, 0 - 9 und A - F. Andere Ziffern in der Ziffernfolge würde die Zahl ungültig machen.

Die Basis eines Zahlensystems bestimmt die Anzahl unterschiedlicher Ziffern. Da im Hexadezimalsystem 16 verschiedene Ziffern existieren, ist die Basis 16.

Eine Hexadezimalzahl besteht natürlich meistens nicht nur aus einer Ziffer, sondern aus einer Ziffernfolge. Daher muss man wissen, wie die Wertigkeit einer Ziffernfolge in der Ziffernfolge ist. Vergleicht man hierfür z.B. die Dezimalzahl 56, dann betrachtet man die Ziffer 5 auch nicht als 5 sondern als den Wert von 50. Nach demselben Prinzip kann man die Wertigkeit von Hexadezimalzahlen ermitteln. Die Wertigkeit einer Ziffernfolge wird durch die Potenzen zur Basis von 16 gebildet. Dabei beginnt man mit der Potenz 160. Für jede Stelle nach links wird der Exponent um 1 erhöht. Einige Beispiele:

  • Ziffernfolge 1: Ergibt 1, da 1 x 160 = 1 ist.
  • Ziffernfolge 12: Ergibt die Hexadezimalzahl 18, da 2 x 160 = 2 ist und 1 x 161 = 16 ist. 16 + 2 ergeben zusammen 18.
  • Ziffernfolge A13: Ergibt die Dezimalzahl 2579, da 3 x 160 = 3 ist, 1 x 161 = 16 ist und 10 x 162 = 2560 ist. Die Werte 2560 + 16+ 3 ergeben zusammen 2579.

Übersicht über die einstelligen Hexadezimalzahlen, den Dezimal- und Dualzahlen

Dezimalzahl Dualzahl Hexadezimalzahl
0 0000 0
1 0001 1
2 0010 2
3 0011 3
4 0100 4
5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
10 1010 A
11 1011 B
12 1100 C
13 1101 D
14 1110 E
15 1111 F

Bei Speicherprogrammierbaren Steuerungen wird die hexadezimale Darstellung von Zahlen häufig verwendet. Es verkürzt die Darstellung erheblich. Wenn man z.B. die Dualzahl 1111 1111 vergleicht, in Hexadezimal braucht man nur FF angeben. Im Dualsystem werden die Ziffernfolgen häufig in 4 Bits zusammengefasst, um eine übersichtliche Darstellung großer Ziffernfolgen zu erhalten. Mit 4 Bits kann man 16 unterschiedliche Werte darstellen. Da man im Hexadezimalsystem mit einer Ziffer ebenfalls 16 unterschiedliche Werte darstellen kann, nutzt man diese Gemeinsamkeit, um Dualzahlen übersichtlicher in Hexadezimal darzustellen. Die Dualzahl 1110 0111 1010 0111 0101 0111 ist z.B. in jeweils 4 Bit Einheiten zusammengefasst. Diese Dualzahl kann man nun in Hexadezimal als E7A757 darstellen. Das Beispiel verdeutlicht die Vereinfachung und dadurch werden auch Fehler beim Lesen von Dualzahlen minimiert.

Bei Speicherprogrammierbaren Steuerung werden Hexadezimalzahlen insbesondere beim Verarbeiten von Zahlen, bei Maskierungen in Verbindung mit UND- und ODER-Befehlen sowie zum Ausblenden von Binärstellen in Operanden verwendet.

Umwandeln von Zahlen im Hexadezimalsystem

Zahlen können von einem Zahlensystem in das andere umgewandelt werden. Genauso wie man Dezimalzahlen in Dual unwandeln kann, gibt es eine Möglichkeit, Dezimalzahlen in Hexadezimal umzuwandeln und umgekehrt. Beim Umwandeln von Dezimalzahlen in Hexadezimal wird der Restwertalgorithmus verwendet.

  • Beispiel: Umwandeln der Dezimalzahl 10010.

Zuerst dividiert man die Zahl 100 durch 16. Als Ergebnis erhält man die Zahl 6,25. Im nächsten Schritt nimmt man den ganzzahligen Anteil des Quotienten und multipliziert die Zahl mit 16, um den Rest zu 100 zu ermitteln. 16 · 6 = 96, der Rest zu 100 ist 4. Somit hätten wir die erste Ziffer (beginnend von rechts). Als nächstes dividiert man den Quotienten erneut durch 16. 6 : 16 ist 0, Rest 6 bleibt übrig. Die zweite Ziffer wäre 6. Somit hätte man die Zahl 6416 für die Dezimalzahl 10010.

Umrechnen zwischen Dualzahlen und Hexadezimalzahlen

Man kann Hexadezimalzahlen nicht nur in Dezimalzahlen umrechnen sondern auch direkt in Dualzahlen. Das geht sogar einfacher als bei Dezimalzahlen. Bei der Umwandlung einer Hexadezimalzahl in eine Dualzahl bildet man sogenannte Nybbles. Ein Nybble besteht aus 4 Bits und wird dabei als eine Ziffer aus dem Hexadezimalsystem dargestellt. Einige Beispiele:

  • 516 soll in Dual umgewandelt werden. Das Ergebnis ist: 0101.
  • A516 soll in Dual umgewandelt werden: Das Ergebnis ist: 1010 0101.
  • CA516 soll in Dual umgewandelt werden: Das Ergebnis ist: 1100 1010 0101
  • A3CA516 soll in Dual umgewandelt werden: Das Ergebnis ist: 1010 0011 1100 1010 0101.

Mit dieser Methode braucht man nicht einmal etwas auszurechnen, um schnell von Hexadezimal in Dual umzuwandeln.

Addition von Hexadezimalzahlen

Im Hexadezimalsystem kann man wie im Dezimalsystem auch addieren. Die Addition erfolgt dabei vom Prinzip her wie bei Dezimalzahlen. Das bedeutet:

  • Stellenweise werden die Ziffern von rechts (kleinster Stellenwert) nach links (größter Stellenwert) addiert.
  • Dabei kann wie im Dezimalsystem auch, ein Übertrag entstehen. Der Übertrag entsteht, wenn der Ziffernvorrat überschritten wird. Beim Hexadezimalsystem wird der Ziffernvorrat nach F übersprungen. In solchen Fällen muss an Übertrag an der nächsten Stelle berücksichtigt werden.

Subtraktion von Hexadezimalzahlen

Nach demselben Prinzip wie bei Dezimalzahlen kann man Hexadezimalzahlen subtrahieren. Das bedeutet:

  • Stellenweise von rechts (kleinster Stellenwert) nach links (größter Stellenwert) wird die Differenz zwischen dem Subtrahenden und dem Minuenden ermittelt.
  • Bei der Subtraktion entsteht ein Übertrag, wenn der Minuend kleiner ist als der Subtrahend. In solchen Fällen wird wieder ein Übertrag an der nächsthöheren Stelle berücksichtigt.

Umrechnen von positiven Dezimalzahlen und Hexadezimalzahlen

Mit diesem Rechner kann man schnell Zahlen von Dezimal nach Hexadezimal umwandeln und umgekehrt.

Hexadezimalwert:
Dezimalwert: