Direkt zum Inhalt
Zum Ende des Inhalts
Zur Service-Navigation
Zur Suche
Zur Hauptnavigation
Zur Anmeldung/Registrierung

Homepage > Aktivitäten > Informatik > Programmieren > 1, 2, 3 ... > Klasse 4 bis 6 > 9: Nachrichten an die Erde funken > Daten richtig übertragen

9.5: Wie kann man sichergehen, dass Daten richtig übertragen wurden?

Autoren:
Publikation: 4.10.2016
Lernstufe: 3
Übersicht: Fehler, die beim Abspeichern oder bei der Übertragung einer Datei aufge­treten sind, lassen sich finden und korrigieren. Dazu muss man allerdings Information hinzufügen und diese geschickt wählen.
Angestrebte Kenntnisse:
  • Information:
    • Information wird in einem Speicher "gelagert": Arbeitsspeicher, Fest­platte, USB-Stick, ...
    • Es können beim Verarbeiten/Verschieben der Daten auf einem Spei­chermedium Fehler auftreten.
    • Es gibt Methoden, wie man diese Fehler finden und korrigieren kann. Das erfordert zusätzlichen Speicherplatz.
Wortschatz: Paritätsbit, Prüfsumme
Dauer: 1 Stunde
Material: Für jede Gruppe:
  • 36 Memory-Karten oder normale Spielkarten; oder noch besser: quadra­tische Pappstücke, die auf einer Seite schwarz, auf der anderen weiß an­gemalt sind
Herkunft: La main à la pâte, Paris

Vorbemerkung

Die Schüler werden mit Sicherheit nicht von selbst auf eine Fehlerkontrolle durch das sogenannte Paritätsbit kommen. Wir beschreiben deshalb im Fol­genden zwei Varianten der Unterrichtsstunde. In der ersten Variante werden die Schüler Schritt für Schritt an die Methode der Fehlerkontrolle mit Pari­tätsbits herangeführt. In der zweiten Variante zeigt die Lehrerin den Schülern einen "Zaubertrick", den die Schüler versuchen zu verstehen.

Ausgangssituation

Die Lehrerin zeigt ein Bild, das entfernt an die Früchtebilder der Unterrichts­stunde 9.1 (Bilder versenden und empfangen) erinnert. In den Abbildungen auf dieser Seite werden in den Textdateien die Kopfdaten weggelassen. Diese sind "P1" (es handelt sich um ein Schwarz-Weiß-Bild) und "5 5" (das Bild besteht aus 5 x 5 Pixeln).

Muster 1

0 0 1 0 0
0 1 0 1 0
1 0 0 0 1
0 1 0 1 0
0 0 1 0 0


Abb. 1: Muster und dazugehörige Kodierung

Die Lehrerin fragt die Schüler, was passieren würde, wenn sich während der Übertragung des Bildes Fehler einschleichen würden. Man könnte sich zum Bei­spiel vorstellen, dass der Wert eines oder mehrerer Pixel verändert wurde. Die Lehrerin ändert jetzt einen Wert in den Bilddaten der Datei und bittet einen Schü­ler an der Tafel das veränderte Bild zu zeichnen. Hier ein Beispiel (aus der "1" in Spalte 4 / Reihe 2 wurde eine "0"):

Muster 2

0 0 1 0 0
0 1 0 0 0
1 0 0 0 1
0 1 0 1 0
0 0 1 0 0


Abb. 2: Veränderte Kodierung und dazugehöriges Muster

Pädagogische Anmerkung

Hier wird absichtlich ein sehr einfaches Beispiel gewählt, sodass die Schüler das, was sie in der Unterrichtsstunde 9.1 (Bilder versenden und empfangen) gelernt haben, erneut einbringen und festigen können.

Recherchearbeit: Wie kann man einen Fehler finden?

Die Lehrerin fragt die Schüler, wie man sichergehen könnte, dass das empfan­gene Bild mit dem gesendeten Bild übereinstimmt. Es geht hier nicht darum, mögliche Fehler zu korrigieren, sondern darum, (übertragene) Daten auf Fehler zu prüfen: Man möch­te die Integrität (Vollständigkeit + Richtigkeit) der Daten sicherstellen.

Das geht nicht ohne zusätzliche Information. Man könnte die Summe aller Wer­te in einer Zeile zusammenaddieren, Zeile für Zeile, und die entsprechenden Werte rechts in eine weitere Spalte schreiben. Oder man zählt ab, ob die An­zahl der Einsen in einer Zeile gerade oder ungerade ist – das ist einfacher und praktischer. Auch in diesem Fall wird diese zusätzliche Information rechts in eine weitere Spalte geschrieben. Dieses Verfahren ist äquivalent zu dem fol­gen­den: Man schreibt in die rechte Spalte jeweils eine "1" oder eine "0", sodass die Anzahl der Einsen in jeder Zeile gerade ist.

Wendet man dieses Verfahren auf die erste Datei an (Abb. 1), erhält man:

Muster 1

0 0 1 0 0             0 0 1 0 0 1
0 1 0 1 0             0 1 0 1 0 0
1 0 0 0 1             1 0 0 0 1 0
0 1 0 1 0             0 1 0 1 0 0
0 0 1 0 0             0 0 1 0 0 1


Abb. 3: Muster, dazugehörige Kodierung mit zusätzlicher Information

Es wurde also eine weitere Spalte hinzugefügt, sodass in jeder Reihe die An­zahl der Einsen gerade ist. Die Lehrerin schließt die Augen und bittet einen Schü­ler, irgendeinen Wert zu ändern. Um den Fehler zu finden, muss die Leh­rerin jetzt nur Zeile für Zeile alle Einsen zusammenzählen.

Wissenschaftliche Anmerkungen

  • Diese Methode wird in der Informatik sehr oft zur Fehlerkontrolle beim Kopieren oder bei der Übertragung einer Datei eingesetzt. Wie der Feh­ler dann auch gefunden werden kann, wird weiter unten beschrieben.
  • Das am Ende der Zeile hinzugefügte Bit nennt man Paritätsbit.

Recherchearbeit: Wie kann man den Fehler korrigieren?

Die Klasse bemerkt: Auf diese Weise erfährt man zwar, dass ein Fehler vorliegt, man kann ihn aber nicht korrigieren. Man weiß nicht, welches Pixel fehlerhaft ist, son­dern lediglich, in welcher Reihe sich das fehlerhafte Pixel befindet. Um die ge­naue Position des fehlerhaften Pixels zu bestimmen, müsste man zusätzlich wissen, in welcher Spalte es sich befindet.

Die Lehrerin fragt die Klasse, wie das funktionieren könnte. Die Schüler kom­men dieses Mal von allein auf die Antwort: Man macht einfach mit den Spalten das, was vorhin schon mit den Zeilen gemacht wurde. Man zählt die Anzahl der Einsen in jeder Spalte. Ist die Anzahl gerade, schreibt man unter die Spalte eine "0", ist sie ungerade, schreibt man unter die Spalte eine "1". In dieser erweiterten Datei ist die Anzahl der Einsen in jeder Spalte immer gerade.

Die Datei sieht nun folgendermaßen aus:

Muster 1

0 0 1 0 0             0 0 1 0 0 1
0 1 0 1 0             0 1 0 1 0 0
1 0 0 0 1             1 0 0 0 1 0
0 1 0 1 0             0 1 0 1 0 0
0 0 1 0 0             0 0 1 0 0 1
                         1 0 0 0 1 0


Abb. 4: Paritätsbits am Ende der Zeilen und Spalten

Ein Schüler verändert erneut einen Wert in der Datei. Diesmal wird die Lehrerin ihm genau sagen können, welchen Wert er verändert hat (nämlich den Wert am Kreuzungspunkt der Spalte und der Zeile mit ungeraden Paritätsbits). Sie kann den Fehler auch sofort korrigieren.

Wissenschaftliche Anmerkung

Ein auf "1" gesetztes Paritätsbit unten rechts in der Ecke weist darauf hin, dass der Fehler nicht in den Bilddaten, sondern in den Paritätsbits selbst zu suchen ist.

Aufgabe (Gruppenarbeit)

Diese Aufgabe basiert auf einer Übung aus dem Buch "Computer Science Un­plugged" [1].

Sobald die Schüler das Prinzip mit den Paritätsbits verstanden haben, teilt die Lehrerin sie in Zweiergruppen auf und gibt jeder Gruppe einen Satz Karten (am besten eignen sich Memory-Karten oder quadratische Pappstücke, die auf der einen Seite schwarz, auf der anderen weiß angemalt sind; aber normale Spiel­karten tun es auch). Die Schüler üben damit, Fehler in der Bilddatei zu erken­nen und zu korrigieren.

Pädagogische Anmerkung

Wenn ein Schüler der Meinung ist, dass sein Partner den Fehler nicht an­hand der Paritätsbits erkennt, sondern weil er sich das Muster gemerkt hat, kann er versuchen, die Anzahl der Karten zu erhöhen und ein Mus­ter zu legen, das sich der Detektiv-Schüler weniger leicht merken kann.

Gemeinsame Erörterung

Die Lehrerin vergewissert sich, dass alle Schüler das Prinzip mit den Paritäts­bits verstanden haben, und fragt sie nun: "Was passiert, wenn zwei Fehler auftreten, zum Beispiel in der gleichen Reihe?". Die Klasse stellt fest, dass man in solch einem Fall trotzdem sagen kann, dass die Datei Fehler enthält, weil sich durch die beiden Fehler die Paritätsbits zweier Spalten ändern. Aber man kann nicht herausbekommen, welche Reihe fehlerhaft ist.

Die Klasse diskutiert darüber, wie man verhindern könnte, dass man Fehler nicht lokalisieren kann. Man könnte zum Beispiel die Anzahl der Paritätsbits erhöhen (anstatt nach 5 Bits ein Paritätsbit zu setzen, könnte man schon nach 3 Bits eins setzen). Je mehr Paritätsbits man setzt, desto wahrschein­licher ist es, dass man einen Fehler entdeckt. Der Nachteil ist, dass die Datei entsprechend größer wird – sie braucht mehr Speicherplatz und es dauert länger, bis man sie übertragen hat.

Fügt man alle 5 Bits ein Paritätsbit hinzu, erhöht man den Informationsgehalt und damit die Größe der Datei um 20%. Je nachdem wie wichtig die Daten sind und wie sicher/verlässlich das Abspeichern/Übertragen einer Datei ist, kann man auch nur alle 10 Bits bzw. alle 100 Bits ein Paritätsbit setzen. Man muss einen vernünftigen Kompromiss finden.

Zusammenfassung

Die Schüler fassen zusammen, was sie in dieser Unterrichtsstunde gelernt haben.

Die Lehrerin vervollständigt den Abschnitt "Information" des Plakats "Was ist Informatik?".

Variante

Man kann diese Unterrichtsstunde auch anders aufziehen, losgelöst von den bisherigen Unterrichtsstunden, eher als eine Art Spiel. Diese Variante beruht auf einer Übung aus dem Buch "Computer Science Unplugged" [1].

Die Schüler können diesen "Zaubertrick" ihrer Familie vorführen. Das kann Spaß machen!

Mögliche Erweiterung für die Sekundarstufe I

Die Schüler können recherchieren, in welchen Bereichen die Methode mit den Paritätsbits eingesetzt wird.


Fußnote

1: Computer Science Unplugged: Error detection – Card Flip Magic (CC BY-NC-SA 4.0).
Diese Aktivität gibt es auch auf Deutsch: Der Zaubertrick (S. 33).

Letzte Aktualisierung: 9.12.2020

Allgemeine Informationen Alphabetischer Index Sitemap Häufig gestellte Fragen La main à la pâte

Anmeldung

Passwort vergessen?

Registrieren