Grundlagen der Informatik: Unterschied zwischen homomorph und fano bedingung?
Hallo leute,
es gibt 2 Fachwörter im Fach "Grundlagen der Informatik", wo ich den Unterschied dessen nicht verstehe:
Homomorphie: "Wenn die Codes so klar definiert sind, dass man sie immer einer Komponente aus dem Alphabet zuordnen kann, ohne dass Verwechslungsprobleme auftreten"
Fano-Bedingung: "Ein C-Code erfüllt die Fano-Bedingung, wenn kein Codewort Anfang eines anderen Code Wortes ist [sinnvoll nur für homomorphe Codes]"
Die Definitionen klingen doch gleich oder nicht??
Danke schon mal für die Antworten!!
1 Antwort
Die Fano-Bedingung ist speziell für Codewörter variabler länge bzw. ohne dediziertem endzeichen. Homomorph und nicht Fano-Konform können Codewörter sein, wenn z.B. alle eine festgelegte Länge haben oder ein dediziertes Endzeichen (Flag) am ende des codewortes vorkommt.
Ein dediziertes endzeichen, ist ein zeichen (flag) das nur dazu da ist, um anzuzeigen, dass das codewort jetzt zu ende ist.
zB. Hat man die codewörter "01", "10", und "0110". Die fano-bedingung ist hier nicht erfüllt, da "01" auch anfang von "0110" ist. Damit dies nun homomorph (eindeutig) ist, muss ein endzeichen (zB. "#" eingeführt werden). Somit sind "01#", "10#" und "0110#" wieder eindeutig, also homomorph.
danke für die antwort, aber verstehe ich nicht so ganz, was meinen sie mit dediziertem endzeichen?