i

Fehlerkennung

Die Übertragung von Daten funktioniert nie perfekt. Durch Grenzen technischer Systeme oder äußere Einflüsse kann es immer vorkommen, dass Daten während des Transports verändert werden. Deshalb baut man in Kommunikationssysteme Verfahren ein, mit denen Übertragungsfehler erkannt werden können.

Erkundung: Fehlererkennung mit einem Paritätsbit

Sandy will Emmy eine Bitfolge senden. Felice, die für die Übertragung zuständig ist, ändert ab und zu ein Bit ab. In jeder Bitfolge verändert sie jedoch höchstens ein Bit. Sandy und Emmy haben sich ein Verfahren ausgedacht, mit dem sie die Veränderung von Bits überprüfen wollen. Sandy zählt hierzu die Einsen in der zu übertragenden Bitfolge. Ist die Anzahl ungerade, so fügt Sandy der Bitfolge eine 1 hinzu, ansonsten eine 0. Ein Zusatzbit, das so ermittelt wird, nennt man auch Paritätsbit.

Fehlererkennung mit Paritätsbit

Aufgabe 1

(a) Ergänze die Paritätsbits für die folgenden Bitfolgen:

  • 1100 0110
  • 1100 0100
  • 0000 0100
  • 0000 0000

(b) Zähle die Einsen in den Bitfolgen aus a). Zähle auch das Paritätsbit mit, falls es 1 ist. Beschreibe, wie Emmy prüfen kann, ob bei der Übertragung ein Bit verändert wurde.

(c) Emmy erhält folgende Bitfolgen. Prüfe jeweils, ob ein Bit verändert wurde:

  • 1010 1010 0
  • 1100 1100 1
  • 1111 1111 0

Fachkonzept: Paritätsbit

TODO

Aufgabe 2: Kann man mit einem Paritätsbits alle Übertragungsfehler erkennen?

Bisher sind wir davon ausgegangen, dass bei jeder Bitfolge höchstens ein Bit verändert wird. In dieser Aufgabe können in jeder Bitfolge auch mehrere Bits verändert werden.

Entscheide für jede der folgenden Bitfolgen, ob Emmy erkennen kann, dass die Bitfolge verändert wurde:

TODO: Arbeitsblatt mit dieser Tabelle?

gesendete Bitfolge (mit Paritätsbit) empfangene Bitfolge (mit Paritätsbit) Anzahl veränderte Bits Erkennt Emmy, das Bits verändert wurden?
0000 1111 0 0000 1110 0
0000 1111 0 0000 1100 0
0000 1111 0 0000 1000 0
0000 1111 0 0000 0000 0

Aufgabe 3: Paritätsbit ermitteln - Implementierung

Mit der folgenden Funktion kann man das Paritätsbit zu einer Bitfolge ermitteln:

(a) Übersetze die Funktion in Pseudocode (d.h. Umgangssprache mit Einrückungen)

(b) In der Datei paritaetsbit_senden.py gibt es eine Funktion, die eine Bitfolge sendet. Erweitere diese Funktion, so dass nach der Bitfolge ein Paritätsbit sendet. Orientiere dich dabei an den Kommentaren in dieser Datei und an der folgenden Abbildung, die das erweiterte Kommunikationsprotokoll zeigt:

Bitübertragungsprotokoll mit Paritätsbit

Aufgabe 4: Paritätsbit prüfen - Implementierung

Wir gehen in dieser Aufgabe davon aus, dass in einer Bitfolge höchstens ein Bit verändert wird.

(a) Entwickle einen Algorithmus (Pseudocode), den der Empfänger nutzen kann, um mit Hilfe des Paritätsbits zu prüfen, ob ein Übertragungsfehler entstanden ist.

(b) Übersetze den Algorithmus aus b) in eine Python-Funktion.

Suche

v
100.128.1.6
inf-schule.de/entwuerfe/Kommunikation_Calliope/bituebertragung_seriell/fehlererkennung_paritaetsbit
inf-schule.de/100.128.1.6
inf-schule.de/@/page/61IvLdtBeTSEhc6t

Rückmeldung geben