# 4.1 Hexadezimal

Quelle: https://inf.zone/lectures/4-memory/short-4-1-hexadezimal/

## Video

[Video ansehen (1080p)](https://videos.inf.zone/ff98eb6603a6146d/short-4-1-hexadezimal-1080p.mp4) · [Video (720p)](https://videos.inf.zone/ff98eb6603a6146d/short-4-1-hexadezimal-720p.mp4) · [Video (480p)](https://videos.inf.zone/ff98eb6603a6146d/short-4-1-hexadezimal-480p.mp4) · [Video auf YouTube](https://youtu.be/0JukfeD-ZX8)

## Material

- [Folien](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf)
- Folien und Transkript: unten auf dieser Seite

## Folien und Transkript

*Folientext aus den PDF-Folien, darunter jeweils der gesprochene Text des Videos. Der gesprochene Text ist maschinell transkribiert und nachkorrigiert, kann aber noch Fehler enthalten; im Video sprechen abwechselnd Prof und eine AI-Figur, die Sprecherwechsel sind nicht markiert. Die Zuordnung zu den Folien ist ungefähr. Die Zeitangaben verlinken auf die Stelle im Video (YouTube). Maßgeblich sind Video und Folien.*

### Folie 1 — Hexadezimal

[Folie 1 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=1)

#### Transkript

**[Video 00:00–00:33](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=0)**

Dies ist Inf-Einf-B. Heute Hexadezimalzahlen. Willkommen zu unserer Vorlesung über das Hexadezimalsystem. Perfektes Timing für meinen morgendlichen Kaffee. Apropos Kaffee, wusstest du, dass erfahrene Programmiererinnen und Programmierer die Hexadezimalzahl C0FFEE also Coffee nutzen, um bestimmte Speicherbereiche zu markieren, oder DEADBEEF also Dead Beef für Speicherinitialisierung? Das zeigt schon.

**[Video 00:33–01:06](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=33)**

Hexadezimalzahlen sind mehr als nur ein weiteres Zahlensystem. Komm, fang jetzt mal an.

### Folie 2

[Folie 2 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=2)

Die meisten westlichen Kulturen verwenden das Dezimalsystem (Basis 10) zur Darstellung von Zahlen:

0 1 2 3 4 5 6 7 8 9

Computer verwenden das Binärsystem (Basis 2) zur Darstellung aller Daten:

0 1

#### Transkript

**[Video 00:33–01:06](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=33)**

Beginnen wir mit einer grundlegenden Beobachtung. In unserer westlichen Kultur verwenden wir das Dezimalsystem mit zehn verschiedenen Ziffern. Dies hat sich historisch entwickelt und ist uns völlig vertraut.

### Folie 3 — In der Informatik ist es wichtig, Daten so darzustellen, wie der Computer sie verarbeitet.

[Folie 3 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=3)

Problem: Lange Ketten von Nullen und Einsen sind für Menschen schwer zu erfassen.

#### Transkript

**[Video 00:33–01:06](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=33)**

Computer hingegen arbeiten ausschließlich mit dem Binärsystem. Sie kennen nur zwei Zustände: Null und Eins. Dies entspricht direkt der Hardware. Strom fließt oder fließt nicht. Ein Schalter ist an oder aus. In der Informatik müssen wir die Datenrepräsentation des Computers verstehen. Doch hier stoßen wir auf ein praktisches Problem.

**[Video 01:06–01:34](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=66)**

Binärzahlen werden schnell unübersichtlich. Nehmen wir als Beispiel eine typische Speicheradresse, wie hier dargestellt: 110000 und so weiter.

### Folie 4 — Das Hexa-

[Folie 4 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=4)

Das Hexadezimalsystem (Basis 16) ist eine effiziente Methode zur Darstellung von Computerdaten.

dezimal-

system

Das Hexadezimalsystem ermöglicht eine einfache Abbildung, da es bei vier binären Stellen (= Halbbyte, „Nibble“) genau 16 Kombinationen gibt, die sich genau mit einer hexadezimalen Ziffer darstellen lassen:

```text
0 1 2 3 4 5 6 7 8 9 a b c d e f
0 1 2 3 4 5 6 7 8 9 A B C D E F
```

#### Transkript

**[Video 01:06–01:34](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=66)**

Selbst für erfahrene Menschen ist es mühsam, solche Bitketten zu lesen oder Fehler darin zu erkennen. Das Hexadezimalsystem bietet hier einen eleganten Ausweg. Es verwendet 16 verschiedene Ziffern: die bekannten Ziffern 0 bis 9 und zusätzlich die Buchstaben A bis F für die Werte 10 bis 15. Der entscheidende Vorteil: vier Binärstellen, also vier Bits, können exakt

**[Video 01:34–02:06](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=94)**

16 verschiedene Zustände darstellen. Jede hexadezimale Ziffer repräsentiert damit präziser eine solche Vierergruppe von Bits. In der Praxis sehen Sie die Buchstaben oft auch großgeschrieben. Beide Schreibweisen sind äquivalent. Diese Eindeutigkeit der Abbildung zwischen vier Bits und einer hexadezimalen Ziffer ist der Schlüssel zur Effizienz des Systems. Jedes Halbbyte, auch Nibble genannt, entspricht genau einer Hexziffer. Diese Tabelle zeigt die systematische Zuordnung zwischen den drei Zahlensystemen. Beachten Sie die Muster. In der Binärspalte sehen wir alle möglichen Vier-Bit-Kombinationen.

**[Video 02:06–02:42](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=126)**

Die Hexadezimalziffern bieten eine kompakte Darstellung dieser Kombinationen. Zum Beispiel repräsentiert C das Bitmuster 1100, was der Dezimalzahl 12 entspricht. Es macht Sinn, hier kurz anzuhalten und sich in Ruhe die Tabelle anzuschauen. Um Verwechslungen zu vermeiden, kennzeichnen wir Hexadezimalzahlen mit dem Präfix 0x. Dies ist eine Konvention, die in vielen Programmiersprachen verwendet wird.

### Folie 5 — Dez Binär Hex Dez Binär Hex

[Folie 5 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=5)

0 0000 0 8 1000 8

1 0001 1 9 1001 9

2 0010 2 10 1010 A

3 0011 3 11 1011 B

4 0100 4 12 1100 C

5 0101 5 13 1101 D

6 0110 6 14 1110 E

7 0111 7 15 1111 F

#### Transkript

*Kein Transkriptabschnitt eindeutig dieser Folie zugeordnet. Möglicherweise eine Aufbau-/Grafikfolie oder eine Abweichung zwischen PDF und Video.*

### Folie 6 — Dez Binär Hex Dez Binär Hex

[Folie 6 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=6)

0 0000 0x0 8 1000 0x8

1 0001 0x1 9 1001 0x9

2 0010 0x2 10 1010 0xA

3 0011 0x3 11 1011 0xB

4 0100 0x4 12 1100 0xC

5 0101 0x5 13 1101 0xD

6 0110 0x6 14 1110 0xE

7 0111 0x7 15 1111 0xF

#### Transkript

*Kein Transkriptabschnitt eindeutig dieser Folie zugeordnet. Möglicherweise eine Aufbau-/Grafikfolie oder eine Abweichung zwischen PDF und Video.*

### Folie 7 — Stellen-

[Folie 7 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=7)

Wie im Binär- und Dezimalsystem gibt es auch im Hexadezimalsystem Stellenwerte. Dabei entspricht jede Position einer Potenz von 16.

wertsysteme

Binär: Potenzen von 2 (1, 2, 4, 8, ...)

Dezimal: Potenzen von 10 (1, 10, 100, 1000, ...)

Hexadezimal: Potenzen von 16 (1, 16, 256, 4096, ...)

#### Transkript

**[Video 02:06–02:42](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=126)**

Wenn wir also 0xC schreiben, wissen wir sofort, dass es sich um die Hexadezimalzahl C handelt, nicht etwa um den Buchstaben C oder die Dezimalzahl 12.

**[Video 02:42–03:02](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=162)**

Stellenwertsysteme arbeiten immer nach dem gleichen Prinzip, nur mit unterschiedlichen Basen. Im Binärsystem sind es Zweierpotenzen, im Dezimalsystem Zehnerpotenzen und im Hexadezimalsystem entsprechend Sechzehnerpotenzen. Die Position jeder Ziffer bestimmt, mit welcher Potenz der Basis sie multipliziert wird. Betrachten wir die Zahl 397.

### Folie 8 — Beispiel

[Folie 8 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=8)

```text
3    9    7
```

#### Transkript

*Kein Transkriptabschnitt eindeutig dieser Folie zugeordnet. Möglicherweise eine Aufbau-/Grafikfolie oder eine Abweichung zwischen PDF und Video.*

### Folie 9 — Hexadezimalzahl ➝Dezimalzahl

[Folie 9 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=9)

```text
0x   3    9    7
```

#### Transkript

**[Video 02:42–03:02](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=162)**

Wenn dies eine Dezimalzahl ist,

**[Video 03:02–03:35](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=182)**

Kennen wir ihre Bedeutung sofort.

### Folie 10 — Hexadezimalzahl ➝Dezimalzahl

[Folie 10 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=10)

```text
        162    161    160
0x      3       9      7
```

#### Transkript

**[Video 03:02–03:35](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=182)**

Interpretieren wir sie aber als Hexadezimalzahl, müssen wir anders rechnen.

### Folie 11 — Hexadezimalzahl ➝Dezimalzahl

[Folie 11 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=11)

```text
        162    161    160
0x      3       9      7
      3·256   9·16    7·1
```

Also 919 dezimal.

#### Transkript

**[Video 03:02–03:35](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=182)**

Die 7 steht im Einser-Platz, das ist 16 hoch 0. Die 9 im 16er-Platz, also 16 hoch 1, und die 3 im 256er-Platz. Das ist gerade 16 hoch 2. Mit unserem 0x-Präfix wird klar, dies ist eine Hexadezimalzahl. Ihr Dezimalwert berechnet sich dann, wie dargestellt, zu 919. Bei Hexadezimalzahlen mit Buchstaben gehen wir genauso vor, müssen uns nur die Dezimalwerte der Buchstaben merken. Für 0xADC berechnen wir das wie folgt.

**[Video 03:35–04:10](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=215)**

Wir erhalten also 2.780. Zeig uns noch andere Umrechnungen, damit die Studierenden auch Zahlen in beide Richtungen übersetzen können.

### Folie 12 — Hexadezimalzahl ➝Dezimalzahl

[Folie 12 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=12)

```text
        162    161     160
0x      A       D      C
      10·256  13·16   12·1

10·256 + 13·16 + 12·1 =
2560 + 208 + 12 = 2780
```

#### Transkript

*Kein Transkriptabschnitt eindeutig dieser Folie zugeordnet. Möglicherweise eine Aufbau-/Grafikfolie oder eine Abweichung zwischen PDF und Video.*

### Folie 13 — Dezimalzahl ➝Hexadezimalzahl

[Folie 13 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=13)

Wiederholte Division durch 16. Reste ergeben von unten nach oben die Hexadezimalstellen.

Beispiel: Dezimalzahl 1234

```text
1234 / 16 = 77  Rest 2
  77 / 16 =  4  Rest 13 (= d)
   4 / 16 =  0  Rest 4

Ergebnis: 0x4d2
```

#### Transkript

**[Video 03:35–04:10](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=215)**

Aber gerne. Zur Konvertierung einer Dezimalzahl in eine Hexadezimalzahl dividieren wir wiederholt durch 16 und notieren die Reste. Diese Reste, von unten nach oben gelesen, ergeben dann die Hexadezimalzahl. Schauen wir uns das am Beispiel der Dezimalzahl 1234 an. Hier sind die einzelnen Rechenschritte.

### Folie 14 — Binär ➝Hexadezimalzahl

[Folie 14 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=14)

Von rechts kommend immer 4 Bits gruppieren. Die Gruppe ganz links bei Bedarf mit zusätzlichen 0-Bits vorne auffüllen. Dann die Stellenwerte der auf 1 gesetzten Bits (also 8, 4, 2, 1) summieren, um Nibble einzeln umzuwandeln.

Beispiel:

```text
01000110101000101011100100111101
```

#### Transkript

**[Video 03:35–04:10](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=215)**

Das Ergebnis lautet also 0x4d2.

**[Video 04:10–04:30](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=250)**

Die Umwandlung zwischen Binär und Hexadezimal ist besonders elegant. Wir gruppieren die Bits von rechts in Vierergruppen. Jede Gruppe entspricht genau einer Hexadezimalziffer.

### Folie 15 — Binär ➝Hexadezimalzahl

[Folie 15 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=15)

Von rechts kommend immer 4 Bits gruppieren. Die Gruppe ganz links bei Bedarf mit zusätzlichen 0-Bits vorne auffüllen. Dann die Stellenwerte der auf 1 gesetzten Bits (also 8, 4, 2, 1) summieren, um Nibble einzeln umzuwandeln.

Beispiel:

```text
01000110101000101011100100111101

0100 0110 1010 0010 1011 1001 0011 1101

   4
```

#### Transkript

> Zuordnung unsicher: wenige gemeinsame Textmerkmale; anhand der benachbarten Folien eingeordnet.

**[Video 04:10–04:30](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=250)**

Diese direkte Entsprechung macht das Hexadezimalsystem so nützlich für Computersysteme.

### Folie 16 — Binär ➝Hexadezimalzahl

[Folie 16 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=16)

Von rechts kommend immer 4 Bits gruppieren. Die Gruppe ganz links bei Bedarf mit zusätzlichen 0-Bits vorne auffüllen. Dann die Stellenwerte der auf 1 gesetzten Bits (also 8, 4, 2, 1) summieren, um Nibble einzeln umzuwandeln.

Beispiel:

```text
01000110101000101011100100111101

0100 0110 1010 0010 1011 1001 0011 1101

   4    6
```

#### Transkript

> Zuordnung unsicher: wenige gemeinsame Textmerkmale; anhand der benachbarten Folien eingeordnet.

**[Video 04:10–04:30](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=250)**

Gehen wir die Umwandlung Schritt für Schritt durch.

### Folie 17 — Binär ➝Hexadezimalzahl

[Folie 17 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=17)

Von rechts kommend immer 4 Bits gruppieren. Die Gruppe ganz links bei Bedarf mit zusätzlichen 0-Bits vorne auffüllen. Dann die Stellenwerte der auf 1 gesetzten Bits (also 8, 4, 2, 1) summieren, um Nibble einzeln umzuwandeln.

Beispiel:

```text
01000110101000101011100100111101

0100 0110 1010 0010 1011 1001 0011 1101

   4    6   10
```

#### Transkript

> Zuordnung unsicher: wenige gemeinsame Textmerkmale; anhand der benachbarten Folien eingeordnet.

**[Video 04:10–04:30](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=250)**

0100 im Binärsystem ist 4 im Dezimalsystem.

### Folie 18 — Binär ➝Hexadezimalzahl

[Folie 18 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=18)

Von rechts kommend immer 4 Bits gruppieren. Die Gruppe ganz links bei Bedarf mit zusätzlichen 0-Bits vorne auffüllen. Dann die Stellenwerte der auf 1 gesetzten Bits (also 8, 4, 2, 1) summieren, um Nibble einzeln umzuwandeln.

Beispiel:

```text
01000110101000101011100100111101

0100 0110 1010 0010 1011 1001 0011 1101

   4    6    A
```

#### Transkript

> Zuordnung unsicher: wenige gemeinsame Textmerkmale; anhand der benachbarten Folien eingeordnet.

**[Video 04:10–04:30](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=250)**

0110 ist eine 6.

### Folie 19 — Binär ➝Hexadezimalzahl

[Folie 19 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=19)

Von rechts kommend immer 4 Bits gruppieren. Die Gruppe ganz links bei Bedarf mit zusätzlichen 0-Bits vorne auffüllen. Dann die Stellenwerte der auf 1 gesetzten Bits (also 8, 4, 2, 1) summieren, um Nibble einzeln umzuwandeln.

Beispiel:

```text
01000110101000101011100100111101

0100 0110 1010 0010 1011 1001 0011 1101

   4    6    A    2    B    9    3    D
```

#### Transkript

> Zuordnung unsicher: wenige gemeinsame Textmerkmale; anhand der benachbarten Folien eingeordnet.

**[Video 04:30–05:09](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=270)**

1010 ist 2 plus 8, also 10, was hexadezimal ein A ist und so weiter.

### Folie 20 — Binär ➝Hexadezimalzahl

[Folie 20 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=20)

Von rechts kommend immer 4 Bits gruppieren. Die Gruppe ganz links bei Bedarf mit zusätzlichen 0-Bits vorne auffüllen. Dann die Stellenwerte der auf 1 gesetzten Bits (also 8, 4, 2, 1) summieren, um Nibble einzeln umzuwandeln.

Beispiel:

```text
01000110101000101011100100111101

0100 0110 1010 0010 1011 1001 0011 1101

   4    6    A    2    B    9    3    D

Ergebnis: 0x46A2B93D
```

#### Transkript

> Zuordnung unsicher: wenige gemeinsame Textmerkmale; anhand der benachbarten Folien eingeordnet.

**[Video 04:30–05:09](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=270)**

Wenn wir das mit allen Vierergruppen machen, erhalten wir die dargestellte Hexadezimalzahl 0x46A2 und so weiter.

### Folie 21

[Folie 21 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=21)

Verwendung

Beim Debugging werden Speicheradressen üblicherweise als Hexadezimalzahlen dargestellt.

Auch beim Programmieren von systemnahen Programmen werden sie benötigt.

Darüber hinaus viele Anwendungen, z.B. RGB-Farbcodes in HTML/CSS.

#### Transkript

**[Video 04:30–05:09](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=270)**

Hexadezimalzahlen begegnen uns in der Informatik ständig. Speicheradressen werden fast immer hexadezimal angegeben. Beim Debugging und in der Maschinencodeprogrammierung kommt man daher ziemlich schnell mit Hexadezimalzahlen in Kontakt. Aber auch bei der Webentwicklung. Sie kennen vielleicht RGB-Farbcodes wie Raute FF0000. Das steht für die Farbe Rot.

**[Video 05:09–05:43](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=309)**

Und angegeben werden diese Farben als Hexadezimalwerte für Rot, Grün und Blau.

### Folie 22

[Folie 22 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=22)

E X T R A S I N 3 M I N U T E N FRAGEN – ANTWORTEN – RÄTSEL UND KURZE ZUSAMMENFASSUNG

#### Transkript

**[Video 05:09–05:43](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=309)**

Das klingt fast so, als müsstest du gleich zum Ende kommen wollen. Hast du an die drei Extra Minuten gedacht? Klar, ich habe da heute etwas Spannendes vorbereitet. Darf ich? Ja klar, leg einfach los.

### Folie 23 — Stellenwertsysteme

[Folie 23 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=23)

Bei Basis b gibt es b verschiedene Ziffern. Die Positionen entsprechen den Potenzen der Basis. Bekannte Beispiele:

Binär (b = 2)

Dezimal (b = 10)

Hexadezimal (b = 16)

Stellenwertsysteme können dazu genutzt werden, eine abgeschlossene Menge von Daten, die einer Ordnung unterliegen, zu kodieren.

#### Transkript

**[Video 05:09–05:43](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=309)**

Wir haben ja schon das Grundprinzip von Stellenwertsystemen erwähnt. Das schauen wir uns jetzt noch einmal genauer an. Ein Stellenwertsystem zur Basis b ist nichts anderes als eine Vorschrift, wie man Zahlen darstellt. Die Basis bestimmt dabei die Anzahl der verfügbaren Ziffern. Das Hexadezimalsystem mit der Basis 16 ist nur ein Spezialfall. Wir können praktisch jede positive Ganzzahl als Basis verwenden.

**[Video 05:43–06:04](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=343)**

Stellenwertsysteme können dazu genutzt werden, eine abgeschlossene Menge von Daten, die einer Ordnung unterliegen, zu kodieren.

### Folie 24 — Stellenwertsysteme: Kodierung von Daten

[Folie 24 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=24)

Beispiel: Menge der Buchstaben von A bis Z (26)

Bei b = 3:

D = 10 weil

A = 0

B = 1

C = 2

D = 2 + 1  (= 3, aber bei b = 3 gibt es ja nur die 3

Ziffern 0, 1, 2!), daher Übertrag zur nächsten Stelle, somit 10)

#### Transkript

**[Video 05:43–06:04](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=343)**

Ah, du schaust schon wieder so unglücklich. Also, was ich meine, ist der Fall, dass wir Daten haben, bei denen es eine eindeutige Sortierung gibt und die Menge der möglichen Ausprägungen feststeht. Das trifft zum Beispiel auf die Menge der Buchstaben von A bis Z zu.

**[Video 06:04–06:36](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=364)**

Das sind genau 26 Stück und es gibt eine klare Reihenfolge. Man sagt in der Informatik dafür auch Ordnung. Die Buchstaben von A bis Z kann man in einem Stellenwertsystem zu einer beliebigen Basis speichern, indem man ihnen fortlaufende Werte zuordnet, beginnend bei Null. Zum Beispiel könnten wir sagen, im Stellenwertsystem zur Basis drei ist D der Buchstabe zehn, weil A ist null, B ist eins und C ist zwei. Jetzt haben wir bei Basis drei das Ende einer Stelle erreicht und werden zweistellig. Daher ist D dann die eins null, also zehn zur Basis drei. Wir können aber auch eine andere Basis nehmen, zum Beispiel 26.

### Folie 25 — Stellenwertsysteme: Kodierung von Daten

[Folie 25 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=25)

Beispiel: Menge der Buchstaben von A bis Z (26)

A = 0, B = 1, … Z = 25

Kompakteres Kodieren als ASCII

Beispiel. INFORMATIK (10 Stellen)

I = 8, N = 13, F = 5, O = …

Als Dezimalzahl:

```text
8·269 + 13·268 + 5·267 + …
= 46.195.472.623.206
```

#### Transkript

**[Video 06:36–07:08](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=396)**

Dann ist das A die Null und das Z ist die fünfundzwanzig. Wenn wir nun in einem Stellenwertsystem zur Basis sechsundzwanzig arbeiten, können wir Zeichenketten viel kompakter kodieren als mit ASCII, wo ja jedes Zeichen immer ein Byte belegt. Wir interpretieren dazu die Buchstaben in der Zeichenkette als Ziffern zur Basis sechsundzwanzig und rechnen dann in die zugehörige Dezimalzahl um. Diese speichern wir dann anstelle der Zeichenkette ab. Zeig uns doch mal an einem Beispielwort, wie das funktioniert. Zum Beispiel mit Informatik. Wenn man das A also wieder auf Null setzt, dann ist der Buchstabe I die acht.

**[Video 07:08–07:35](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=428)**

Der Buchstabe N ist dann die dreizehn und so weiter. Das machen wir für alle zehn Stellen im Wort. Wenn wir die Buchstaben in ihre Zahlen umgewandelt haben, können wir die Zahl zur Basis sechsundzwanzig ausrechnen. Also für den ersten Buchstaben müssen wir rechnen acht mal sechsundzwanzig hoch neun, weil das I ist ja die acht und es steht an der vordersten Stelle, also der neunten Stelle von rechts, wenn man bei null zu zählen beginnt. Dann plus dreizehn mal sechsundzwanzig hoch acht und so weiter.

**[Video 07:35–08:08](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=455)**

Wenn man das alles aufsummiert, kommt man auf eine Zahl von ungefähr 46 Millionen. [Anm.: Die Folie zeigt 46.195.472.623.206, also ungefähr 46 Billionen.]

### Folie 26 — Stellenwertsysteme: Kodierung von Daten

[Folie 26 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=26)

Menge der Buchstaben von A bis Z (26)

INFORMATIK (10 Stellen)

Als Dezimalzahl: `46.195.472.623.206`

Benötigter Platz zur Speicherung: 6 Bytes.

Warum?

10 Buchstaben in Basis 26

Anzahl Möglichkeiten: 26¹⁰

log2 (26¹⁰) ≈ 47,004

→6 Bytes (48 Bits) reichen aus

Vergleich: Als ASCII-String 10 Bytes benötigt.

#### Transkript

**[Video 07:35–08:08](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=455)**

Mhm. Und jetzt wirst du uns garantiert gleich stolz verkünden, dass diese Zahl viel weniger Platz braucht als der String, oder? Wie viel sparen wir denn? So fünf oder zehn Prozent vielleicht? Ne, noch etwas mehr. Wir brauchen sechs Bytes Speicherplatz, um die Zahl abzulegen. Und das gilt übrigens nicht nur für das Wort Informatik, sondern für alle zehnstelligen Wörter, die aus Kleinbuchstaben bestehen. Was? Ich glaube, das musst du unseren Studierenden noch mal genauer erklären. Okay. Wie kann man herausfinden, wie viel Platz man benötigt?

**[Video 08:08–08:38](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=488)**

Naja, wir rechnen dazu den Zweierlogarithmus von 26 hoch 10 aus. Das Ergebnis ist etwas mehr als 47, was bedeutet, dass wir die Zahl mit 48 Bit darstellen können. 48 Bit benötigen 6 Byte. Zum Vergleich: Bei ASCII-Kodierung haben wir 10 Bytes gebraucht. Das ergibt also eine Einsparnis von 40 Prozent.

### Folie 27 — Stellenwertsysteme: Kodierung von Daten

[Folie 27 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=27)

Menge der Buchstaben von A bis Z (26)

INFORMATIK (10 Stellen)

Als Dezimalzahl: `46.195.472.623.206`

Benötigter Platz zur Speicherung: 6 Bytes.

Warum?

10 Buchstaben in Basis 26

Anzahl Möglichkeiten: 26¹⁰

log2 (26¹⁰) ≈ 47,004 = log10 (26¹⁰) / log10 (2)

→6 Bytes (48 Bits) reichen aus

Vergleich: Als ASCII-String 10 Bytes benötigt.

#### Transkript

**[Video 08:08–08:38](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=488)**

Vielleicht als Ergänzung: 26 hoch 10 rechnen wir, weil wir ja wissen wollen, wie viele mögliche Wörter mit 10 Buchstaben es gibt.

**[Video 08:38–09:09](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=518)**

Von dem Wert rechnen wir dann den Logarithmus zur Basis 2 aus.

### Folie 28 — Wie dekodiert man die Zahl zu ihrem String?

[Folie 28 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=28)

Beispiel: 1234

So wie vorhin gezeigt: Wiederholte Division durch die Basis (nun 26) und die erhaltenen Reste aufschreiben.

Leere Stellen links ggf. mit 0-en auffüllen (Padding) so dass die bei der Kodierung vereinbarte Anzahl an Stellen erreicht wird.

```text
Erster Schritt:
1234 / 26 = 47 Rest 12 (= M)
Ergebnis (10-stellig):
A A A A A A A B V M
```

#### Transkript

**[Video 08:38–09:09](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=518)**

Und wenn Sie nicht mehr wissen, wie das geht, man nimmt einen beliebigen Logarithmus, zum Beispiel zur Basis 10, und dividiert dann das Ergebnis durch den Wert vom Logarithmus 2, wobei man die gleiche Basis nimmt. Das nennt man dann Basis-Transformation. Und wie bekommt kommt man jetzt eigentlich wieder von so einer Zahl zur Zeichenkette zurück? Also was ist, wenn ich so eine Zeichenkette als Zahl gespeichert habe, sagen wir 1234? Wie komme ich da auf den String, der damit codiert wurde?

**[Video 09:09–09:48](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=549)**

Na, so wie vorhin. Wir dividieren wiederholt durch 26 und nutzen die Reste als Indizes im Alphabet. Die leeren Stellen füllen wir mit der Null, was in unserem Fall ja einem A entspricht. Heraus kommt der String A A A A A A A B V M. So, dann sind wir fertig, oder? Hat doch etwas länger gedauert als gedacht.

### Folie 29 — Hexadezimal verbindet Binär- und Dezimalsystem

[Folie 29 als PDF](https://inf.zone/download/lectures/4-memory/4.1-hexadezimal.pdf#page=29)

0x-Präfix kennzeichnet Hexadezimalzahlen

(4 Bits = 1 Hex-Ziffer)

eindeutig

Anwendungen: Speicheradressen,

Konvertierung Dez zu Hex: Division bzw. Multiplikation

Debugging, RGB-Farben (#FF0000)

mit Stellenwerten

Konvertierung Binär zu Hex:

Stellenwertsysteme funktionieren mit beliebiger Basis (z.B. „Base26“ für Text)

4er-Gruppen direkt umwandeln

> Bildinhalte sind nicht transkribiert; siehe Originalfolie.

#### Transkript

> Zuordnung unsicher: wenige gemeinsame Textmerkmale; anhand der benachbarten Folien eingeordnet.

**[Video 09:09–09:48](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=549)**

Ja, um genau zu sein 0x23A Sekunden. Was? Ist es dir etwa lieber, wenn ich das Sexagesimalsystem der Babylonier nehme? Na gut, wir waren gerade bei 9 Minuten und 30 Sekunden. Ein faszinierendes System übrigens dieses Sexagesimalsystem. Es hält sich bis heute in unserer Zeitmessung und. Ah, aber das ist dann wohl Stoff für eine andere Vorlesung.

**[Video 09:48–10:08](https://www.youtube.com/watch?v=0JukfeD-ZX8&t=588)**

Richtig. Und für unsere Studierenden noch eine kleine Rechercheaufgabe: Der Hexadezimalwert CAFEBABE ist eine bekannte Magic-Number. Können Sie herausfinden, wo diese verwendet wird und warum? Sehr gut. Bis bald. Dies war Inf-Einf-B.
