Hexadezimalsystem
Im Hexadezimalsystem (griech. hexa „sechs“ und lat. decem „zehn“, auch Sedezimalsystem von lat. sedecim „sechzehn“) werden Zahlen in einem Stellenwertsystem mit der Basis 16 (also einem 16er-System) dargestellt.
In der Datenverarbeitung wird das Hexadezimalsystem verwendet, um die von der Maschine im Dualsystem verarbeiteten Zahlen, oder sonstige binäre Muster, in einer für den Menschen übersichtlicheren Weise zu notieren (Die Hexadezimalzahlen sind einfach kürzer als die dazugehörigen Dualzahlen.) Das Hexadezimalsystem eignet sich hierfür besser als das Dezimalsystem, weil man es auch im Kopf leicht in das Dualsystem umwandeln kann, und weil die technisch gebräuchlichen Datenworte aus Oktetten bestehen, deren Wertebereich (00000000 bis 11111111) genau dem einer zweistelligen Hexadezimalzahl (00 bis FF) entspricht.
Wir sind es gewöhnt, im Dezimalsystem („10er-System“) zu rechnen. Das bedeutet, unser „arabisches“ (eigentlich indisches) Zahlensystem verwendet 10 Symbole zur Notation der Ziffern (0 bis 9). Das Hexadezimalsystem enthält dagegen 16 Ziffern. Seit Mitte der 1950er Jahre werden zur Darstellung der sechs zusätzlichen Ziffern die Buchstaben A bis F oder a bis f als Zahlzeichen verwendet. Dies geht auf die damalige Praxis der IBM-Informatiker zurück. So lassen sich mit einer einstelligen hexadezimalen Zahl die Dezimalzahlenwerte von 0 bis 15 darstellen:
hexadezimal | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 |
dual | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 | 10000 |
dezimal | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
oktal | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 20 |
Dieses hexadezimale, alpha-numerische Mischsystem ist derzeit die Standardrepräsentation der hexadezimalen Ziffern. Seit einigen Jahren existiert ein Vorschlag, hexadezimale Zahlen allgemein mit neuen, unzweideutigen, sogenannten „omni-litteralen“ (d. h. nur Buchstaben-) Ziffern darzustellen. Siehe dazu: Hexadezimalzeit.
Darstellung von Hexadezimalzahlen
Um eine hexadezimale Zahl von einer normalen Dezimalzahl unterscheiden zu können, existieren mehrere Schreibweisen. Üblicherweise wird die hexadezimale Zahl mit einem Präfix oder Suffix versehen.
Verbreitete Schreibweisen sind zum Beispiel: 7216, 72H, 0x72, "72, 72h und $72.
Längere Zahlen werden auch in Hexadezimaldarstellung leicht unübersichtlich, so dass man Trennzeichen wie die Tausenderpunkte bei Dezimaldarstellung (im Deutschen, Kommata im Englischen) einführt, nur hier eher alle vier Stellen: AFFE.0815 . Hierfür gibt es allerdings keine feste Konvention, so dass auch hierbei Varianten vorkommen.
Zum Vergleich: Dezimale Zahlen werden, wenn eine Unterscheidung notwendig ist, zum Beispiel 11410 oder 114D geschrieben. Oktale Zahlen werden meist durch eine obligatorische führende Null gekennzeichnet, zum Beispiel 017.
Farbwerte im HTML
Für die Kodierung von Farbwerten auf Webseiten werden die Hexadezimalwerte der Farbkomponenten Rot, Grün und Blau zusammenhängend als eine 6-stellige hexadezimale Zahl mit vorangestelltem Doppelkreuz (#) geschrieben. Beispiel: der Wert #5A2A2A enthält die hexadezimalen Werte 5A für Rot, 2A für Grün und 2A für Blau. Das Ergebnis dieser Mischung ist Braun.
Zählen im Hexadezimalsystem
Gezählt wird wie folgt:
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E | 1F |
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 2A | 2B | 2C | 2D | 2E | 2F |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
F0 | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | FA | FB | FC | FD | FE | FF |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
FF0 | FF1 | FF2 | FF3 | FF4 | FF5 | FF6 | FF7 | FF8 | FF9 | FFA | FFB | FFC | FFD | FFE | FFF |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
FFF0 | FFF1 | FFF2 | FFF3 | FFF4 | FFF5 | FFF6 | FFF7 | FFF8 | FFF9 | FFFA | FFFB | FFFC | FFFD | FFFE | FFFF |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
Aussprache
Da das Hexadezimalsystem erst seit einigen Jahrzehnten tatsächlich benutzt wird, gibt es bisher auch keine Namen für die hexadezimalen Zahlen. Hexadezimalzahlen liest man also immer Ziffer für Ziffer.
Beispiele:
- 2F sprich: "zwei-eff",
- 112 sprich: "eins-eins-zwei hexadezimal".
Anwendung
Das Hexadezimalsystem eignet sich sehr gut, um Folgen von Bits (verwendet in der Digitaltechnik) darzustellen. Vier Stellen einer Bitfolge (ein Nibble, auch Tetrade) werden wie eine Dualzahl interpretiert und entsprechen so einer Ziffer des Hexadezimalsystems, da 16 die vierte Potenz von 2 ist. Die Hexadezimaldarstellung der Bitfolgen ist leichter zu lesen und schneller zu schreiben:
Dual Hexadezimal Dezimal 1111 = F 15 (ein Nibble) 1.1111 = 1F 31 11.0111.1100.0101 = 37C5 14277 1010.1111.1111.1110.0000.1000.0001.0101 = AFFE0815 2952661013
Computersoftware stellt daher Maschinensprache oft auf diese Weise dar.
Konvertierung in andere Zahlensysteme
Umwandlung von Dezimalzahlen in Hexadezimalzahlen
Eine Möglichkeit, eine Zahl des Dezimalsystems in eine Zahl des Hexadezimalsystems umzurechnen, ist die Betrachtung der Divisionsreste, die entstehen, wenn die Zahl durch die Basis 16 geteilt wird.
Im Beispiel der 127810 sähe das so aus:
1278 : 16 = 79 Rest 14 (= E) 79 : 16 = 4 Rest 15 (= F) 4 : 16 = 0 Rest 4
Die Hexadezimalzahl wird von unten nach oben gelesen und ergibt somit 4.F.E.
Umwandlung von Hexadezimalzahlen in Dezimalzahlen
Um eine Hexadezimalzahl in eine Dezimalzahl umzuwandeln, muss man die einzelnen Ziffern mit der jeweiligen Potenz der Basis multiplizieren. Der Exponent der Basis entspricht der Stelle der Ziffer, wobei der Zahl vor dem Komma eine Null zugeordnet wird. Dazu muss man allerdings noch die Ziffern A, B, C, D, E, F in die entsprechenden Dezimalzahlen 10, 11, 12, 13, 14, 15 umwandeln.
Beispiel für 4FE16:
Für das Zählen und Rechnen im Hexadezimalsystem gibt es eine Eselsbrücke: A = 10 und B = 11 kann sich jeder merken. C wie zwölf, D wie dreizehn, E für vierzehn kommt vor F wie fünfzehn.
Mathematische Darstellung des Hexadezimalsystems
Formuliert im Dezimalsystem:
Formuliert im Hexadezimalsystem: