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 :(
Bei 3 Bit: -1 -> Binär 111 -> Gray 100 Bei 4 Bit: -1 -> Binär 1111 -> Gray 1000
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.
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.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.