FB18 - Das Forum für Informatik

fb18.de / Bachelorstudieng / PM Technische Informatik

Übungsblatt 4 - Aufgabe 14

Übungsblatt 4 - Aufgabe 14 2008-11-16 09:37
Anonymer User
Hallo zusammen,

ich habe ein Verständnisproblem bei Aufgabe 14.
Dort geht es um Fehlerkorrigierende Codes, die für Bitketten (die ja nur die Werte 0 und 1 enthalten können) mit module 2 berechnet werden.
Was schreibe ich als Prüfbit, wenn die Rechnung z.B. (0 + 0 + 0) mod2 = 2 ergibt?
Ich kann die 2 ja nicht als Wert in das einzelne Prüfbit schreiben.
Kippt sie dann soz. um (Überlauf) und wird zu einer 0 ?

Vielleicht kann mir jemand auf die Sprünge helfen.

Danke!

RE: Übungsblatt 4 - Aufgabe 14 2008-11-16 10:23
Fred
wenn die Rechnung z.B. (0 + 0 + 0) mod2 = 2 ergibt?
Wenn Du mod2 rechnest, kann niemals 2 als Ergebnis rauskommen.
Bender: Ahhh, what an awful dream. Ones and zeroes everywhere… and I thought I saw a two.
Fry: It was just a dream, Bender. There's no such thing as two.
Außerdem, wie kommst Du bei 0 + 0 + 0 auf einen anderen Wert als 0?

Hier nochmal die + Funktion mod2 mit allen möglichen Eingaben:

0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0

Für Deine Beispielrechnung ergibt sich unter Zuhilfenahme des Assoziativgesetzes 0 + 0 + 0 = (0 + 0) + 0 = 0 + 0 = 0.

RE: Übungsblatt 4 - Aufgabe 14 2008-11-16 13:34
Dantel
Ich hab viel mehr ein Problem mit der 15ten Aufgabe. o.O

"Berechnen sie zu folgender Bitkette B = 1001001110100 einen Prüfcode mittels des Divisionspolynoms x^5+x^4+x^2+1 nach dem in der Vorlesung beschriebenen Verfahren."

Leider habe ich diese Vorlesung verpasst. Könnte mir einer dieses Verfahren näher bringen(wenigstens sagen, wie man es nennt)? Alle anderen Aufgaben habe ich mehr oder weniger "geknackt", falls da jemand im Gegenzug hilfe bräuchte.

RE: Übungsblatt 4 - Aufgabe 14 2008-11-16 13:51
Fred
Könnte mir einer dieses Verfahren näher bringen(wenigstens sagen, wie man es nennt)?
CRC <– klick mich

RE: Übungsblatt 4 - Aufgabe 14 2008-11-16 14:36
Dantel
Aha, danke. Aber … verstehe ich das richtig. Ich muss das Divisionspolynom jetzt in Code umwandeln (11010) und durch die Bitkette dividieren?

1001001110100
11010
——
10000
11010
—–
10101
11010
—–
11111
11010
—–
10110
11010
——
11001
11010
——
01100

Das ist ungleich null, also fehlerhaft?

Ach, irgendwie denke ich das alles komplett falsch verstanden zu haben ^.^

RE: Übungsblatt 4 - Aufgabe 14 2008-11-16 15:13
Fred
Das ist ungleich null, also fehlerhaft?
Ohne jetzt auf Deine Rechnung einzugehen; ist Deine Schlussfolgerung an dieser Stelle überhaupt sinnvoll? War das gefragt? Lies doch nochmal die Aufgabenstellung:
Berechnen Sie zu folgender Bitkette B […] einen Prüfcode.

RE: Übungsblatt 4 - Aufgabe 14 2008-11-16 15:28
Dantel
Sollte keine Antwort auf die Aufgabe sein, sondern stumpfes rezitieren von eben Gelesenem ^^. Das Problem ist vllcht viel mehr, dass Ich nicht weiss, was der Prüfcode genau sein soll(jede Quelle scheint ihre eigenen Begriffe zu verwenden). Ist das dieser Rest, aus dem man (eventuell) einen Fehler ablesen kann oder etwas komplett anderes? o.O .

RE: Übungsblatt 4 - Aufgabe 14 2008-11-16 16:04
squifi
Ist eigentlich ein Unterschied, ob man polynomdivision mit Binärzeichen oder Potenzen durchführt.

Habe beide Variaten gemacht und bei beiden kommen unterschiedliche ergebnisse heraus.

Und was ist ein Codierungsgewinn?
Bezieht sich letzteres auf das decordieren auf den Informationsgehalt der Codewörter(Entropie),
oder auf die mittlere Codelänge?

Gruß und vielen dank

RE: Übungsblatt 4 - Aufgabe 14 2008-11-16 16:36
Fred
Ist eigentlich ein Unterschied, ob man polynomdivision mit Binärzeichen oder Potenzen durchführt.
Solange Du in beiden Fällen das Zweierkomplement verwendest (d.h. 0 - x² = x² und nicht etwa -x²), sollte es keinen Unterschied machen.

Und was ist ein Codierungsgewinn?
Das sollst Du selbst definieren.

RE: Übungsblatt 4 - Aufgabe 14 2008-11-16 16:47
squifi
Dann muss ich nochmal die Fehlerquelle suchen, danke Fred!

RE: Übungsblatt 4 - Aufgabe 14 2008-11-18 14:11
Anonymer User
Hallo Fred,
ich habe auch versucht, die Aufgabe zu lösen. Vielen Dank vorweg für Deinen Link auf das CRC-Beispiel im Wiki. Hat schon mal gut weitergeholfen. Trotzdem habe ich noch ein paar Verständnisfragen:
1.)
Das Divisionspolynom der Aufgabe lautet: x^5 + x^4 + x^2 + 1
Ist es korrekt, daß dies das folgende bedeutet:
(1*x^5) + (1*x^4) + (0*x^3) + (1*x^2) + (0*x^1) + (1*x^0) ?
Ist es korrekt, daß es somit ein Polynom 5. Grades ist (und 6 Stellen hat), was gleichzeitig bedeutet, daß an die Nachricht (bevor ich dividiere) 5 Nullen angehängt werden müssen?

Meine weiteren Fragen klären sich vielleicht von selbst, nachdem ich bei diesem ersten Schritt Hilfe bekommen habe.
Viele Grüße
alex

RE: Übungsblatt 4 - Aufgabe 14 2008-11-18 15:00
Fred
Ist es korrekt, […] daß an die Nachricht (bevor ich dividiere) 5 Nullen angehängt werden müssen?
Keine Einwände von meiner Seite.

RE: Übungsblatt 4 - Aufgabe 14 2008-11-18 15:15
Anonymer User
OK, daraus ergibt sich bei mir ein neues Problem.
Vielleicht habe ich die Division ja nicht richtig ausgeführt.

Ich habe am Ende unterm Strich 000101 als Rest stehen. Würde mich wundern, wenn das richtig ist, weil damit die Kontrolle der 'gesendeten Nachricht' nicht wirklich geklappt hat.
Wenn ich so eine Reihe habe, lasse ich dann die Nullen weg, bevor ich den Rest anhänge oder schreibe ich sie mit?
alex

RE: Übungsblatt 4 - Aufgabe 14 2008-11-18 15:22
Fred
Ich habe am Ende unterm Strich 000101 als Rest stehen.
Wieso sechs Ziffern? Vorher hast Du doch auch nur fünf angehängt. Schau Dir nochmal bei Wikipedia die Länger des Generatorpolynoms an und die Länge des Rests.

Wenn ich so eine Reihe habe, lasse ich dann die Nullen weg, bevor ich den Rest anhänge oder schreibe ich sie mit?
Die Nullen schreibst Du im ersten Schritt ja nur hin, weil Du den echten Rest noch nicht kennst. Man tut erst mal so, als wäre der Rest 0. Sobald Du den echten Rest ermittelt hast, ersetzt Du die Nullen mit dem ermittelten Rest.

Bei Wikipedia steht auch explizit "An den Rahmen ohne Anhang wird nun der Rest angehängt".

RE: Übungsblatt 4 - Aufgabe 14 2008-11-18 15:38
Anonymer User
Jetzt habe ich es verstanden - der Groschen fällt Pfennigweise oder centweise ?

Vielen Dank. Die Rechnung ist aufgegangen.

Viele Grüße

alex