Was ist der Gray-Code?

3 Antworten

Kennst du den Binärcode? Beim Binärcode gibt es ein Problem wenn sich mehrere Bits(=Eingänge) ändern: die Eingänge ändern sich nicht alle schlagartig genau zum gleichen Zeitpunkt, sondern sind verzögert. Beispiel 0011-> 0100 zum Zeitpunkt des Umschaltens kann man nicht sagen ob zuerst die 0010 oder die 0001 anliegt, da man aber beides nicht haben möchte, hat man den Graycode entwickelt. Dieser ändert sich immer nur um eine Stelle um diesem Problem aus dem Weg zu gehen, einen weiteren Sinn gibt es nicht warum man ihn verwendet.

Der Greycode ist eine Binärcodierung (also nur 1 und 0) bei der sich bei jeder nachfolgenden Zahl nur ein Bit ändert.

Um Dir ein Beispiel aus der Praxis zu zeigen: Eine Digitalanzeige z.b. zeigt eine Temperatur eines Fühlers an. Dieser Wert wird automatisch jede Minute abgespeichert. Nun kann es theoretisch passieren, dass der Lesevorgang genau dann statt findet, wenn sich die Temperatur gerade auf der Anzeige ändert, sprich, gerade dann gelesen wird, wenn sich die Zustände der an der Digitalanzeige anliegenden Eingänge (0 oder 1) änder.

Wenn jetzt z.b. aus einer 7 (Binär: 0111) eine 8 wird (binär: 1000), dann änders sich sogar alle 4 Bits.

Also könnte es passieren, dass gelesen wird, während die Zuständer der Eingänge teilweise schon geschaltet haben, aber andere erst wenige Taktzyklen später schalten.

Anstelle eine 8 oder einer 7 könnte in diesem Beispiel dann jede beliebige Zahl zwischen 0 und 8 entstehen.

Durch den Graycode wird deshalb verhindert, das ein völlige falscher wert gespreichert wird, sondern eine 7 oder eine 8, da sich höchstens ein Bit geändert hat (oder eben noch nicht).

Gruss

Was möchtest Du wissen?