faecher:informatik:mittelstufe:daten_codierung:hexadezimalsystem:start

Das Hexadezimalsystem

Das Binärsystem hast du nun schon kennengelernt. Damit rechnen Computer, aber für uns Menschen ist es praktisch unmöglich, damit größere Datenmengen zu "analysieren". In einem riesigen Wust aus 0ern und 1ern verlieren wir einfach den Durchblick.

Manchmal möchte man aber trotzdem als Mensch einen größere Menge an Binärdaten analysieren, die keinen direkt lesbaren Text darstellen. Dazu wendet man ein anderes Zahlensystem an, das Hexadezimalsystem. Dessen Haupt-Vorteil wirst du später verstehen.

Wenn man das Binärsystem verstanden hat, dann versteht man auch sehr schnell das Hexadezimalsystem.

Wert als 2er-Potenz $2^4$ $2^3$ $2^2$ $2^1$ $2^0$
Wert als 2er-Potenz 16 8 4 2 1
Beispiel-Binärzahl 1 0 1 1 0

Daraus ergibt sich die Zahl \begin{alignat}{3} 10110_2 &= \underline{1 * 2^4} + 0 * 2^3 &&+ \underline{1 * 2^2} &&+ \underline{1 * 2^1} + 0 * 2^0\\ &= 1 * 16 &&+ 1 * 4 &&+ 1 * 2\\ &= 22_{10} \end{alignat}

Die wesentlichen Eigenschaften für das Binärsystem (Basis 2) lassen sich wie folgt zusammenfassen:

  • Jede Stelle besitzt den Wert $Basis^{Stelle}$, wobei Basis in diesem Fall 2 ist und die Stelle rechts mit 0 beginnt und nach links hochzählt.
  • Es sind pro Stelle nur die Ziffern 0 bis "Basis-1" erlaubt, hier also 0 und 1.

Das Hexadezimalsystem hat die Basis 16 (von griech. hexa „sechs“ und lat. decem „zehn“). Damit muss es nun offenbar die folgenden Eigenschaften haben:

  • Jede Stelle besitzt den Wert $16^{Stelle}$, wobei die Stelle rechts mit 0 beginnt und nach links hochzählt.
  • Es sind pro Stelle nur die Ziffern 0 bis inkl. 15 erlaubt. Moment, Ziffern? 15 besteht aber bereits aus zwei Ziffern! Daher nutzt man einen Trick. Bis inkl. der 9 wird alles normal dargestellt, danach würde jede Stelle mit 10, 11, … aber zwei Ziffern verschlingen, was nicht erlaubt ist. Stattdessen beginnt man dann mit dem Buchstaben A für die 10, B für die 11, C für die 12, … bis F für die 15.
Wert 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Darstellung im Hexadezimalsystem 0 1 2 3 4 5 6 7 8 9 A B C D E F

Damit lässt sich z. B. die Hexadezimalzahl $142AD_{16}$ folgendermaßen ins Dezimalsystem umrechnen:

Wert als 16er-Potenz $16^4$ $16^3$ $16^2$ $16^1$ $16^0$
Wert als 16er-Potenz 65536 4096 256 16 1
Beispiel-Binärzahl 1 4 2 A D

\begin{alignat*}{5} 142AD_{16} &= 1 * 16^4 &&+ 4 * 16^3 &&+ 2 * 16^2 &&+ \underline{10} * 16^1 &&+ \underline{13} * 16^0\\ &= 1 * 65536 &&+ 4 * 4096 &&+ 2 * 256 &&+ 10 * 16 &&+ 13 * 1\\ &= 82605_{10} \end{alignat*}

(A1) Hexadezimal zu Dezimal

Übersetze die folgenden Hex-Zahlen ins Dezimalsystem:
$4_{16}$, $16_{16}$, $C4_{16}$, $5D0_{16}$, $AFFE_{16}$

Die Umwandlung vom Hexadezimal- ins Dezimalsystem läuft genauso wie bei der Umwandlung von Dezimal zum Binärsystem: Wir teilen ganzzahlig durch die Basis und betrachten den Rest!

Wandle die Zahl $12262_{10}$ ins Hexadezimalsystem um: \begin{alignat}{3} 12262 : 16 &= 766 \quad &&Rest: 6 \quad &&\rightarrow Ziffer: 6\\ 766 : 16 &= 47 \quad &&Rest: 14 \quad &&\rightarrow Ziffer: E\\ 47 : 16 &= 2 \quad &&Rest: 15 \quad &&\rightarrow Ziffer: F\\ 2 : 16 &= 0 \quad &&Rest: 2 \quad &&\rightarrow Ziffer: 2 \end{alignat} Achtung: Die "Ergebnis-Ziffern" des Rests muss man wieder von rechts nach links aufschreiben, bzw. von unten nach oben lesen. Das Ergebnis lautet also $12262_{10} = 2FE6_{16}$.

(A2) Dezimal zu Hexadezimal

Übersetze die folgenden Dezimalzahlen ins Hex-System (nutze im Zweifelsfall einen Taschenrechner):
13, 30, 95, 162, 1820

Mit einer Hex-Ziffer kann man 16 verschiedene Zahlen darstellen. Um im Binärsystem dieselbe Menge an verschiedenen Zahlen darzustellen benötigt man exakt 4 Binärziffern. Man kann also immer 4 Binärziffern zu einer Hex-Ziffer zusammenfassen.

\begin{alignat}{2} &\underbrace{1101}_{13 = D}\ \underbrace{0110}_{6} \qquad\qquad\qquad && \underbrace{1001}_{9}\ \underbrace{1100}_{C}\\ &\rightarrow 1101\ 0110_2 = D6_{16} \qquad\qquad\qquad && \rightarrow 1001\ 1100_2 = 9C_{16} \end{alignat}

Diese Eigenschaft macht das Hexadzimalsystem für uns Informatiker so interessant! Die wichtigste Datenmenge ist bekanntlich das Byte, welches aus 8 Bit besteht. Anstatt nun ganz viele 0er und 1er zu analysieren, die jeweils in 8er-Gruppen zusammengefasst sind, ist es einfacher, Hex-Ziffern in 2er-Gruppen zu analysieren.

Binär Hexadezimal
01101000 01100001 01101100 01101100 01101111 68 61 6c 6c 6f

(A3) Binär zu Hexadezimal

Übersetze die folgenden Binärzahlen ins Hex-System:

  • $0011\ 0110_2$, $1111\ 1001_2$, $1010\ 0101_2$,
  • Achtung, jetzt wird es kniffliger: Wie musst du die folgenden Bits zu 4er-Gruppen zusammenfassen? $100110_2$, $11011010111_2$

Schau dir die nachfolgende Rechnung an und vollziehe sie nach.

(A4) Führe folgende Rechnungen durch und gib die Ergebnisse als Hexadezimalzahlen an.

  • $AB_{16} + CD_{16}$
  • $D3_{16} + AE7_{16}$

Erstelle eigene Aufgaben zur Umwandlung von einem Zahlensysteme zu einem anderen. Nutze anschließend dieses Tool, um dein Ergebnis zu kontrollieren - dort wird sogar eine Erklärung der Umwandlung angezeigt.

  • faecher/informatik/mittelstufe/daten_codierung/hexadezimalsystem/start.txt
  • Zuletzt geändert: 04.11.2024 17:36
  • von Marco Kuemmel