m
k-fehlererkennender Code
11.01.2010 19:32:52
Laut Definition ist ein Code dann fehlererkennend, wenn er größer gleich k+1 ist.
Beim Parity-Check wird aber nur 1 Bit eingefügt, womit k dann ja 0 sein müsste.

Irgendwie habe ich da ein Grundverständnis-Problem, wie's mir scheint. Hilfe!
Re: k-fehlererkennender Code
11.01.2010 19:40:38
er ist !k!-fehlererkennend, das kann auch heissen er ist 0-fehlererkennend wenn k=0 ist

"wenn er größer gleich k+1" ist, hmmm
->er ist k-fehlererkennend wenn die !Distanz! größergleich k+1 ist

ein 0-fehlererkennender code hat also dist >= 1, dh jedes codierte zeichen unterscheidet sich nur um 1 (zb huffmancode, der hat keine fehlererkennung)
ein 1-fehlererkennender code hat dist >=2, dh jedes codierte zeichen unterscheidet sich mindestens an 2Stellen, zum beispiel der parity-code. Durch das zusätzliche bit erhöhst du die länge der codewörter um eins und die Distanz der Wörter um 1, weil es eben so klug gewählt ist, dass es so ist.

mfg
jan
Re: k-fehlererkennender Code
11.01.2010 19:46:44
Ein Code c von fester Länge ist genau dann k-fehlererkennend, wenn dist(c) >= k+1 gilt.
Das heißt ein Code erkennt k-Bit Fehler, wenn jedes Wort mindestens den Hammingenabstand von k+1 zu jedem anderen Wort hat.
Im Fall des Parity-Checks müssen sich mindestens 2 Bits ändern um ein anderes gültiges Wort zu erreichen. Daher erkennt der Code 1-Bit Fehler, da dadurch ja ein ungültiges Wort entsteht. Also dist(c)=2 und k=1

ps. janistdoof :(



1 mal bearbeitet. Zuletzt am 11.01.2010 19:55 von Kyanoush Seyed Yahosseini.
m
Re: k-fehlererkennender Code
11.01.2010 20:32:02
Jetzt hab ich's...
Denkfehler ;) Danke schön!!