bit/byte/hex folien sync beide kurse + neue viz embeds
223015c (internettechnik): - byte-aufbau ausgebaut (build-up tabelle 0..127..255 wie b) - neue slides: why-8-bit, byte-flow, three-views nach byte-nibble-hex/hex-dec-table 223015b (dateiformate): - byte-nibble-hex slide eingebaut - neue slides: why-8-bit (vor hex-lead), hex-dec-table, byte-flow, three-views - wo-begegnet-hex tabelle (CSS, MAC, fehlercodes, speicher, unicode) - bit-vs-byte verwirrung (Mbit/s vs MB/s) konvention: 'Byte' und 'Bit' invariant, kein plural-s
This commit is contained in:
@@ -1195,6 +1195,33 @@ Sog. RGB Tuple (geordnete endliche Liste)
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
Kernidee: jedes Byte lässt sich sauber in zwei 4-Bit-Hälften (Nibbles) zerlegen. Jede Hälfte hat 2⁴ = 16 Zustände – und genau 16 Symbole hat Hex (0-F). Deshalb passt Hex perfekt: 1 Nibble = 1 Hex-Ziffer, 1 Byte = 2 Hex-Ziffern. Keine krumme Umrechnung.
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
Warum gerade 8 Bit?
|
||||
- CPU adressiert byteweise — kleinste adressierbare Einheit
|
||||
- Halbe Byte (z.B. 0x0000.5) existieren nicht
|
||||
- Speichercontroller, Bus, CPU-Register alle auf 8-Bit-Häppchen ausgelegt
|
||||
- Einzelne Bit lesen: erst Byte holen, dann mit Bitmaske isolieren (byte & 0b1000_0000)
|
||||
- Hardware-Geschichte: IBM System/360 (1964) setzte 8-Bit-Standard, 7-Bit-ASCII + 1 Paritätsbit
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _class: lead -->
|
||||
|
||||
# Hexadezimal
|
||||
@@ -1226,6 +1253,102 @@ Sog. RGB Tuple (geordnete endliche Liste)
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
Hex ↔ Dezimal Lookup-Tabelle: 0–F = 0–15
|
||||
A=10, B=11, C=12, D=13, E=14, F=15
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
1 Byte = 8 Bit = 2 Hex-Ziffern = 1 ASCII-Zeichen
|
||||
- Dieselbe Datei, drei Schreibweisen
|
||||
- Jeder Rahmen = ein Byte
|
||||
- Byte ändern sich nicht, nur unsere Anzeige
|
||||
- ↵ (0x0A) = nicht druckbar → Hex-Editoren zeigen . als Platzhalter
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
Dieselben 8 Byte (PNG-Dateianfang: 89 50 4E 47 0D 0A 1A 0A) — drei Perspektiven:
|
||||
1. Bitstream — was wirklich gespeichert wird (unleserlich)
|
||||
2. Hex — gruppiert in 8-Bit-Häppchen (kompakt)
|
||||
3. Bedeutung — was die Byte signalisieren:
|
||||
- 89: Magic Byte (>127 → "ich bin Binärdatei")
|
||||
- 50 4E 47: P N G (ASCII-Format-Kürzel)
|
||||
- 0D 0A 1A 0A: CR LF EOF LF (erkennt kaputte Übertragung)
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
# Wo begegnet Ihnen Hex-Code?
|
||||
|
||||
| Kontext | Beispiel |
|
||||
|---------|----------|
|
||||
| CSS-Farben | `#FF5733` |
|
||||
| MAC-Adressen | `00:1A:2B:3C:4D:5E` |
|
||||
| Fehlercodes | `0x80070005` |
|
||||
| Speicheradressen | `0xA04F20` |
|
||||
| Unicode | `U+00E4` (ä) |
|
||||
| Datei-Signaturen | `89 50 4E 47` (PNG) |
|
||||
|
||||
<!--
|
||||
Präfixe:
|
||||
- 0x = "das ist Hexadezimal" (C, JavaScript, Python)
|
||||
- U+ = Unicode-Codepoint (Standard für Zeichenkodierung)
|
||||
- # = CSS-Konvention für Farben
|
||||
|
||||
ABKÜRZUNGEN:
|
||||
- MAC = Media Access Control (eindeutige Hardware-Adresse einer Netzwerkkarte)
|
||||
- Unicode = universeller Zeichensatz für alle Schriftsysteme
|
||||
|
||||
Speicheradressen erklärt:
|
||||
- 64-Bit-System → Adresse hat 64 Bit = 16 Hex-Ziffern
|
||||
- Beispiel vollständig: 0x0000000000A04F20 (führende Nullen weggelassen)
|
||||
- "0x" = Präfix, sagt nur "jetzt kommt Hex"
|
||||
|
||||
Fehlercodes: Windows zeigt diese bei Bluescreens
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
# Bit vs. Byte: Die Verwirrung
|
||||
|
||||
**1 Byte = 8 Bit** → Bit ÷ 8 = Byte
|
||||
|
||||
| Einheit (Bit) | Einheit (Byte) |
|
||||
|---------------|----------------|
|
||||
| 1 Kbit = 1.000 Bit | 1 KB = 1.000 Byte = 8.000 Bit |
|
||||
| 1 Mbit = 1.000.000 Bit | 1 MB = 1.000.000 Byte = 8 Mbit |
|
||||
| 1 Gbit = 1 Mrd. Bit | 1 GB = 1 Mrd. Byte = 8 Gbit |
|
||||
|
||||
100 Mbit/s Bandbreite = **12,5 MB/s** Downloadrate
|
||||
|
||||
<!--
|
||||
Bits = kleines b, Bytes = großes B
|
||||
Internetanbieter: Mbit/s (klingt größer!)
|
||||
100 Mbit/s ÷ 8 = 12,5 MB/s
|
||||
Marketing - 100 klingt besser als 12,5
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _class: lead -->
|
||||
|
||||
# ASCII
|
||||
|
||||
@@ -913,19 +913,46 @@ Shannon: Begründer der Informationstheorie
|
||||
|
||||
# Das Byte
|
||||
|
||||
**8 Bit = 1 Byte**
|
||||
### Die kleinste *adressierbare* Informationseinheit
|
||||
|
||||
### 8 bit = 1 Byte
|
||||
|
||||
```
|
||||
0 0 1 0 1 0 1 0
|
||||
0 0 1 0 1 0 1 0 = 42
|
||||
```
|
||||
|
||||
**Wie viele Kombinationen?**
|
||||
2⁸ = 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 = **256 Möglichkeiten** (0-255)
|
||||
|
||||
<!--
|
||||
BYTE = Wortspiel aus "Bit" + "Bite" (Bissen)
|
||||
Warum 8 Bits? IBM System/360 (1964) setzte Standard
|
||||
2×2×2×2×2×2×2×2 = 256
|
||||
BYTE = Wortspiel aus "Bit" + "Bite" (Bissen) — Begriff geprägt von Werner Buchholz (IBM, 1956)
|
||||
Schreibweise mit "y" statt "i": bewusste Änderung zur Vermeidung von Verwechslung mit "Bit"
|
||||
binary 00101010 = decimal 42
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
# Das Byte
|
||||
|
||||
### 8 bit = 1 Byte
|
||||
|
||||
```
|
||||
0 0 0 0 0 0 0 0 = 0
|
||||
0 0 0 0 0 0 0 1 = 1
|
||||
0 0 0 0 0 0 1 0 = 2
|
||||
0 0 0 0 0 0 1 1 = 3
|
||||
0 0 0 0 0 1 0 0 = 4
|
||||
|
||||
0 1 0 0 0 0 0 0 = 64
|
||||
0 1 1 1 1 1 1 1 = 127
|
||||
1 1 1 1 1 1 1 1 = ?
|
||||
```
|
||||
|
||||
2 × 2 × 2 × 2 × 2 × 2 × 2 × 2 = 2⁸ = **256 mögliche Zustände**
|
||||
|
||||
<!--
|
||||
- 1964: IBM System/360 setzte den 8-Bit-Byte-Standard — vorher 6-Bit/7-Bit-Systeme
|
||||
- ASCII (1963) brauchte 7 Bit für 128 Zeichen
|
||||
- 8 Bit = praktisch für Hardware (Zweierpotenz: 2³ = 8)
|
||||
- 8 Bit = 2 Hexadezimalziffern (elegante Darstellung)
|
||||
- Kleinste adressierbare Einheit im Speicher: Prozessor kann nicht einzelne Bits direkt ansprechen, immer Bytes
|
||||
-->
|
||||
|
||||
---
|
||||
@@ -957,6 +984,22 @@ Farbbild: Rot + Grün + Blau
|
||||
Kernidee: jedes Byte lässt sich sauber in zwei 4-Bit-Hälften (Nibbles) zerlegen. Jede Hälfte hat 2⁴ = 16 Zustände – und genau 16 Symbole hat Hex (0-F). Deshalb passt Hex perfekt: 1 Nibble = 1 Hex-Ziffer, 1 Byte = 2 Hex-Ziffern. Keine krumme Umrechnung.
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
Warum gerade 8 Bit?
|
||||
- CPU adressiert byteweise — kleinste adressierbare Einheit
|
||||
- Halbe Byte (z.B. 0x0000.5) existieren nicht
|
||||
- Speichercontroller, Bus, CPU-Register sind alle auf 8-Bit-Häppchen ausgelegt
|
||||
- Einzelne Bit lesen: erst Byte holen, dann mit Bitmaske isolieren (byte & 0b1000_0000)
|
||||
- Hardware-Geschichte: IBM System/360 (1964) setzte 8-Bit-Standard, 7-Bit-ASCII + 1 Paritätsbit
|
||||
-->
|
||||
|
||||
<!--
|
||||
# Zahlensysteme
|
||||
|
||||
@@ -1013,6 +1056,38 @@ CSS (Cascading Style Sheets)-Farben nutzen Hex: #FF0000 = Rot
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
1 Byte = 8 Bit = 2 Hex-Ziffern = 1 ASCII-Zeichen
|
||||
- Dieselbe Datei, drei Schreibweisen
|
||||
- Jeder Rahmen = ein Byte
|
||||
- Byte ändern sich nicht, nur unsere Anzeige
|
||||
- ↵ (0x0A) = nicht druckbar → Hex-Editoren zeigen . als Platzhalter
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
<!-- _header: '' -->
|
||||
<!-- _footer: '' -->
|
||||
|
||||

|
||||
|
||||
<!--
|
||||
Dieselben 8 Byte (PNG-Dateianfang: 89 50 4E 47 0D 0A 1A 0A) — drei Perspektiven:
|
||||
1. Bitstream — was wirklich gespeichert wird (unleserlich)
|
||||
2. Hex — gruppiert in 8-Bit-Häppchen (kompakt)
|
||||
3. Bedeutung — was die Byte signalisieren:
|
||||
- 89: Magic Byte (>127 → "ich bin Binärdatei")
|
||||
- 50 4E 47: P N G (ASCII-Format-Kürzel)
|
||||
- 0D 0A 1A 0A: CR LF EOF LF (erkennt kaputte Übertragung)
|
||||
-->
|
||||
|
||||
---
|
||||
|
||||
# Wo begegnet Ihnen Hex-Code?
|
||||
|
||||
| Kontext | Beispiel |
|
||||
|
||||
Reference in New Issue
Block a user