🔐

Fehlererkennende & -korrigierende Verfahren

IMP Klasse 8 · Gymnasium Baden-Württemberg

Informatik Interaktiv Klasse 8
🎯 Worum geht's? Klasse 8 · 2 Unterrichtsstunden

Nach dieser Seite kannst du …

  • erklären, warum bei der Übertragung von Daten Fehler entstehen
  • mit Wiederholung und Paritätsbit Übertragungsfehler erkennen
  • mit dem Hamming-Code einen Fehler nicht nur erkennen, sondern auch korrigieren

Vorwissen: Binärzahlen (0 und 1)

Digitale Daten können bei der Übertragung verfälscht werden – ein Bit kippt von 0 auf 1 oder umgekehrt. Die folgenden Verfahren helfen dabei, solche Fehler zu erkennen oder sogar zu korrigieren.

📊 Übersicht aller Verfahren

Verfahren Zusatzbits Fehler erkennen Fehler korrigieren Effizienz
Repetition (n×) (n−1) Kopien ✅ bis zu ⌊n/2⌋ ✅ bis zu ⌊(n−1)/2⌋
⚠ nur bei ungeradem n
1/n
Parität 1D 1 Bit ✅ ungerade Fehler ❌ k/(k+1)
Parität 2D Zeile + Spalte ✅ ✅ 1 Bit n·m/((n+1)·(m+1))
3-Kreis-Hamming 3 Bits ✅ ✅ 1 Bit 4/7 ≈ 57 %
Hamming (allg.) r = ⌈log₂(n+1)⌉ ✅ ✅ 1 Bit k/(k+r)

1. Repetitionsverfahren erkennt & korrigiert

Beim Repetitionsverfahren wird jedes Datenbit n-mal hintereinander gesendet. Der Empfänger entscheidet anhand der Mehrheit, welcher Wert gemeint war.

Beispiel: d1=1, d0=0 mit n=3
Gesendet:   1 1 1   0 0 0
Empfangen: 1 0 1   0 0 0
Mehrheit:   1 (2×1, 1×0)     0 (3×0) ✓
Wiederholungsanzahl n und ihre Eigenschaften:
n Erkennbar Korrigierbar Besonderheit
3× 1 Fehler 1 Fehler Standard
4× 2 Fehler ❌ Bei 2×2 Gleichstand Gerades n: kein eindeutiger Entscheid möglich
5× 2 Fehler 2 Fehler Aufwändiger, aber zuverlässiger
Merksatz: Bei ungeradem n gilt: Wer öfter vorkommt, hat Recht – solange weniger als die Hälfte der Bits in einer Gruppe falsch sind. Bei geradem n kann es Gleichstand geben → kein eindeutiges Ergebnis!

2. Paritätsbit (1D) erkennt Fehler

Ein zusätzliches Prüfbit p0 wird so gewählt, dass die Gesamtanzahl der Einsen im Codewort gerade ist (gerade Parität). p0 ist das XOR aller Datenbits.

Beispiel: Datenbits 1 0 1 1
p0 = 1⊕0⊕1⊕1 = 1
Codewort: 1 0 1 1 1

Prüfung beim Empfang: XOR aller Bits
→ Ergebnis 0: kein Fehler
→ Ergebnis 1: Fehler erkannt (Position unbekannt!)
Merksatz: Ein Prüfbit erkennt, ob ein Fehler passiert ist – aber nicht wo. Und: Zwei gleichzeitige Fehler bleiben unsichtbar!

3. Paritätsbit (2D) korrigiert 1 Fehler

Die Datenbits werden in einer Matrix angeordnet. Für jede Zeile und jede Spalte wird ein eigenes Prüfbit berechnet (XOR). Fehlerhafte Zeile und fehlerhafte Spalte „zeigen" auf das falsche Bit.

Beispiel: 2×3-Matrix
     S2 S1 S0 | pZ
Z1:  1  0  1 | 0
Z0:  1  1  0 | 0
pS:  0  1  1 | 0

Fehlersuche: Welche Zeile hat XOR ≠ 0? Welche Spalte? Der Schnittpunkt ist das fehlerhafte Bit → einfach umkehren (0↔1).

Merksatz: Zeile und Spalte sind wie Koordinaten – ihr Schnittpunkt ist der Fehler. Zwei Fehler können nicht mehr korrigiert werden.

4. 3-Kreis-Hamming-Code korrigiert 1 Fehler

Genau 4 Datenbits (d3 d2 d1 d0) werden auf drei Kreise A, B, C verteilt. Jeder Kreis enthält 3 Datenbits und 1 Prüfbit (p0, p1, p2). Das Prüfbit sorgt dafür, dass in jedem Kreis die Anzahl der Einsen gerade ist.

Kreiszugehörigkeit:
Kreis A: p0, d0, d1, d3  →  p0 = d0⊕d1⊕d3
Kreis B: p1, d0, d2, d3  →  p1 = d0⊕d2⊕d3
Kreis C: p2, d1, d2, d3  →  p2 = d1⊕d2⊕d3

Codewort-Reihenfolge (7 Bits):
d3 d2 d1 p2 d0 p1 p0

Fehlersuche mit dem Syndrom:
sA = p0⊕d0⊕d1⊕d3  |  sB = p1⊕d0⊕d2⊕d3  |  sC = p2⊕d1⊕d2⊕d3
Fehlerposition (Hamming) = sA·1 + sB·2 + sC·4
0 = kein Fehler, 1–7 = Position des fehlerhaften Bits

Merksatz: Welche Kreise zeigen einen Fehler? Die Zahl aus sA, sB, sC sagt dir genau, welches Bit falsch ist.

5. Hamming-Code (allgemein) korrigiert 1 Fehler

Der allgemeine Hamming-Code funktioniert für beliebig viele Datenbits. Die Prüfbits stehen immer an den Positionen, die Zweierpotenzen sind: 1, 2, 4, 8, … (von rechts gezählt).

Vorgehen beim Codieren:
  1. Anzahl Prüfbits r bestimmen: kleinstes r mit 2r ≥ k + r + 1
  2. Datenbits an alle Positionen eintragen, die keine Zweierpotenz sind
  3. Prüfbit pi = XOR aller Bits, deren Position Bit i gesetzt hat
Beispiel: d3d2d1d0 = 1011, r=3, n=7
Pos:  7  6  5  4  3  2  1
Bit:   d3 d2 d1 p2 d0 p1 p0
Wert: 1  0  1 0 1 0  1

Prüfbit-Berechnung (XOR-Tabelle):
         p2 p1 p0
Pos.7 d3:  1   1   1
Pos.5 d1:  1   0   1
Pos.3 d0:  0   1   1
     HP:  0   0   1
Syndrom beim Empfänger:
HP = empfangene Prüfbits ablesen.
Alle Datenbits mit Wert 1 untereinander schreiben (Hamming-Position binär).
XOR aus HP und allen Datenbit-Zeilen = Syndrom S.
S = 0 → kein Fehler  |  S ≠ 0 → S ist die Position des Fehlers (dezimal).
Merksatz: Das Syndrom ist dein „Fehler-GPS" – es zeigt dir die genaue Position des fehlerhaften Bits. Dann einfach umkehren (0↔1) und das Codewort ist wieder korrekt.

📤 Sender

Verfahren
Nachricht (Binär, MSB links)
Datenbits (MSB → LSB)
Codewort — Prüfbits eintragen!
Datenbits
Prüfbits

📡 Übertragungskanal

Fehlerwahrscheinlichkeit
20 %
Max. Fehler
1 Bit

📋 Protokoll

📥 Empfänger

⚠ Noch keine Übertragung. Bitte zuerst senden.

📋 Protokoll

0 🔥
Serie
0
Beste Serie
0
Richtig
0
Gesamt
0
XP
—
Genauigkeit
Level-FortschrittLevel 1
🏅 Abzeichen
Verfahren
Schwierigkeit
⭐ Leicht
⭐⭐ Mittel
⭐⭐⭐ Schwer

📜 Verlauf (letzte 10)

# Verfahren Schw. Aufgabe Erg. XP

🧪 Diagnose & Test

Teste dein Wissen systematisch – wähle Umfang und Verfahren.

⚙️ Test konfigurieren

Verfahren Schwierigkeitsgrad
⭐ Leicht
⭐⭐ Mittel
⭐⭐⭐ Schwer
🔀 Gemischt
Anzahl Aufgaben
10 Aufgaben
Zeitlimit

📄 Arbeitsblatt-Export

Erstelle individuell zusammengestellte Arbeitsblätter als PDF – mit oder ohne Lösungen.

⚙️ Blatt-Einstellungen

Titel Untertitel / Klasse Schule (optional) Lehrperson (optional) Verfahren
Schwierigkeit
Anzahl Aufgaben
6

👁 Vorschau

Aufgaben werden generiert…

📥 Export