Forum: Mikrocontroller und Digitale Elektronik Verständinsproblem Gray-code


von Chris (Gast)


Lesenswert?

Hi,
kann mir mal jemand mal erklären wie ich im gray-code negative Zahlen 
als 2er complement ausdrücke?

bei einer 3bit Zahl wäre -1 ja 111, beim gray ist 111 ja aber bereits 
für die Zahl 5 reserviert. (anderst als im Binärcode bei dem ich ja den 
Zehlenbereich hier bis 7 hochzählen könnte)

Irgenwie komme ich gerade mächtig durcheinander, finde aber den fehler 
nicht :(

von Stefan E. (sternst)


Lesenswert?

Bei 3 Bit:
-1 -> Binär 111 -> Gray 100

Bei 4 Bit:
-1 -> Binär 1111 -> Gray 1000

von Chris (Gast)


Lesenswert?

d.h. die Zahl wird an der Nulllinie gespiegelt?

von Chris (Gast)


Lesenswert?

bzw. gibt es dann überhaupt ein 2er complement beim gray-code?

von Stefan E. (sternst)


Lesenswert?

Chris wrote:
> bzw. gibt es dann überhaupt ein 2er complement beim gray-code?

Nein, es gibt nur eine feste Zuordnung von Binär<->Gray. Um das 
2er-Komplement zu bilden, musst du den Weg über den Binärcode gehen.

von (prx) A. K. (prx)


Lesenswert?

Wo ist das Problem? Die erste Hälfte eines N-Bit Gray-Codes hat 
Bit(N-1)=0 und die zweite Hälfte =1. Grad wie beim normalen Binärcode. 
Damit ist dieses Bit genauso als Vorzeichen verwendbar. Problematisch 
ist nur, das als 2er Komplement zu bezeichnen.

Und rechnen kann man damit sowieso nicht vernünftig, d.h. man wird stets 
umcodieren und dann normal binär rechnen, ggf. wieder zurück. Alles was 
man dafür benötigt ist eine eineindeutige Abbildung von 2^N Codeworte 
auf 2^N Codeworte. Ob das nun Gray-Code ist oder zufällig 
zusammengewürfelt, ist dabei völlig egal.

von Chris (Gast)


Lesenswert?

okay alles klar, jetzt bekomm ich's hin!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.