Gray-Code-Konverter
Aus der Binärzahl 1011 wird der Gray-Code 1110, und der Rückweg ist genauso exakt; führende Nullen bleiben erhalten, damit die Breite stimmt. Praktisch für Drehgeber-Tabellen, Karnaugh-Tafeln und Übungen zur Digitaltechnik. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Eingabewert
- 1011
- Umwandlungsrichtung: binary_to_gray
- Binary to gray
- Eingangsbits
- 1011
- Ausgangsbits
- 1110
- Eingangsganzzahl
- 11
- Ausgangsganzzahl
- 14
Binär-reflektierter Gray-Code etikettiert aufeinanderfolgende Ganzzahlen so, dass aufeinanderfolgende Codes sich in genau einem Bit unterscheiden. Diese Eigenschaft zählt bei Drehgebern, Karnaugh-Tafeln, fehlertoleranten Zustandsautomaten, Demos digitaler Kommunikation und Übungen im Unterricht, in denen Lernende ein Binärwort in die Gray-Form abbilden oder Binär aus Gray zurückgewinnen müssen. Dieser Gray-Code-Konverter akzeptiert eine binäre Bitkette oder eine nichtnegative ganze Zahl, eine Konvertierungsrichtung und liefert eine deterministische Bitkette plus strukturierte Felder, die Sie in automatisierten Tests festnageln können.
Warum sich beim Gray-Code nur ein Bit ändert
Gewöhnliche Binärzahlen ändern beim Hochzählen oft mehrere Stellen auf einmal. Liest ein Drehgeber genau in diesem Moment ab, kann kurz ein völlig falscher Wert entstehen. Der binär-reflektierte Gray-Code nummeriert dieselben ganzen Zahlen anders: Er besteht weiterhin nur aus Nullen und Einsen, doch zwei aufeinanderfolgende Werte unterscheiden sich in genau einem Bit. Deshalb begegnet er Ihnen bei Drehgebern und Positionssensoren, in Karnaugh-Tafeln, bei fehlertoleranten Zustandsautomaten und in Übungen zur Digitaltechnik.
So rechnen Sie um – und typische Fehler
Für die Umwandlung verschieben Sie die Binärzahl um eine Stelle nach rechts und verknüpfen beide bitweise mit dem exklusiven Oder: Aus 1011, also der Zahl 11, wird 1110, also 14. Für den Rückweg arbeiten Sie von links nach rechts; jedes Binärbit ergibt sich aus allen Gray-Bits bis zu seiner Stelle. Häufige Fehler sind, die Richtung zu verwechseln, Gray-Code wie eine normale Binärzahl in Dezimal umzurechnen oder führende Nullen wegzulassen, obwohl die Aufgabe eine feste Breite verlangt. Kommazahlen, negative Werte und andere Zeichen als Nullen und Einsen werden abgelehnt, statt still verfälscht zu werden.
Was reflektierter Gray-Code ist und welche Eingaben gültig sind
Standard-Binär ist die gewöhnliche Zweierbasis-Darstellung einer nichtnegativen ganzen Zahl, mit Stellenwerten, die Zweierpotenzen sind. Binär-reflektierter Gray-Code ist eine andere Etikettierung derselben Ganzzahlen: Es werden weiterhin Bits aus Null und Eins verwendet, aber aufeinanderfolgende Werte kippen nur ein einziges Bit. Die klassische Kodierung von Binär B nach Gray G ist die bitweise Regel G gleich B XOR B um ein Bit nach rechts verschoben; die Dekodierung akkumuliert XOR vom höchstwertigen Bit zum niedrigstwertigen Bit, sodass jedes Binärbit die Parität des Gray-Präfixes ist.
Senden Sie das Pflichtfeld value als reine Bitkette aus Nullen und Einsen, optional mit 0b-Präfix, oder als nichtnegative ganze Zahl bzw. Ziffernkette, wenn Sie die dezimale Größe bevorzugen. Führende Nullen in einer reinen Bitkette bleiben erhalten, damit Hausaufgaben und Hardwarebeispiele eine feste Breite behalten.
Anwendungsfälle
Encoder- und Embedded-Werkzeugnotizen
Entwickler, die Drehgeber, Zustandsautomaten oder Sensorpositions-Codes dokumentieren, erzeugen stabile Gray-Bitketten aus binären Quellwerten, ohne XOR-Tabellen von Hand zu berechnen.
Häufige Fragen
Was geschieht, wenn ich einen nichtbinären Wert eingebe?
Bitketten dürfen nur die Ziffern 0 und 1 verwenden (optionales 0b-Präfix); Gleitkommazahlen, Mischtext und Müll werden abgelehnt und nicht berechnet.
Welche Gray-Code-Variante implementiert dieses Werkzeug?
Nur binär-reflektierter Gray-Code: Kodierung mit XOR des Werts und seiner Rechtsverschiebung um ein Bit; Dekodierung durch kumulatives XOR vom höchstwertigen Bit. Andere Gray-Familien liegen außerhalb des Umfangs.
Wie rechne ich Binär von Hand in Gray-Code um?
Verschieben Sie die Binärzahl um eine Stelle nach rechts und verknüpfen Sie sie bitweise mit dem Original per exklusivem Oder. Aus 1011 wird so der Gray-Code 1110, genau wie im Konverter.
Wie wandle ich Gray-Code zurück in Binär?
Beginnen Sie beim linken Bit: Jedes Binärbit ist das exklusive Oder aller Gray-Bits bis zu dieser Stelle. Wählen Sie die Richtung Gray nach Binär, dann erledigt das Werkzeug das mit gleicher Bitzahl.
Bleiben führende Nullen erhalten?
Ja. Geben Sie eine Bitfolge mit Nullen am Anfang ein, bleiben diese im Ergebnis stehen, damit Ihre Übung oder Ihr Schaltplan durchgehend dieselbe Breite behält.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/fmt/gray-code \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":"1011","direction":"binary_to_gray"}'const res = await fetch("https://api.kit.forhosting.com/fmt/gray-code", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": "1011",
"direction": "binary_to_gray"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/fmt/gray-code",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": "1011",
"direction": "binary_to_gray"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/fmt/gray-code", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":"1011","direction":"binary_to_gray"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":"1011","direction":"binary_to_gray"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/fmt/gray-code", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"value": "1011",
"direction": "binary_to_gray"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "fmt.gray_code",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Nichtbinäre Eingaben scheitern mit einem klaren invalid_input-Fehler, statt stillschweigend Müllziffern abzuschneiden.
Was reflektierter Gray-Code ist und welche Eingaben gültig sind
Die Aliasse bits, binary und n werden akzeptiert, wenn Ihr Formular oder SDK das Feld bereits so etikettiert. Die Richtung muss binary_to_gray oder to_gray zum Kodieren und gray_to_binary oder from_gray zum Dekodieren sein; die Aliasse dir und mode wirken gleich. Gleitkommawerte, negative Zahlen, leere Zeichenketten und gemischter Text, der keine Binärziffern ist, scheitern mit invalid_input, weil dieses Produkt eine exakte Ganzzahlumwandlung verspricht, keine Näherung. Identische Eingaben erzeugen stets identisches JSON: Es gibt keinen Netzwerkaufruf, keinen Zufalls-Seed und keine Wanduhr auf dem Pfad.
Antwortfelder lesen und gängige Ergebnisse von Hand prüfen
Schnellchecks schaffen Vertrauen: Binär eins null eins eins kodiert zu Gray eins eins eins null; Gray null eins eins eins dekodiert zurück zu Binär null eins null eins; Binär null mappt auf Gray null; ein dreistelliges Binär eins null null wird Gray eins eins null. Weil jeder Schritt XOR auf diskreten Bits ist, driften Ergebnisse nie so, wie Gleitkomma-Tricks bei großen Eingaben es tun würden. Bei Erfolg spiegelt die Antwort value als die ursprüngliche Bitkette oder die sichere Ganzzahl, die Sie gesendet haben, direction als die kanonische binary_to_gray- oder gray_to_binary-Bezeichnung, bits_in als die normalisierte Eingabekette mit höchstwertigem Bit zuerst und bits_out als die umgewandelte Kette, die Sie typischerweise für Anzeige, Bewerter und Encoder-Dokumentation wollen. integer_in und integer_out interpretieren diese Bitketten als nichtnegative Ganzzahlen, wenn die Größe in eine sichere JSON-Zahl passt, oder als dezimale Ziffernketten, wenn sie größer ist, sodass Pipelines beide Formen prüfen können. bit_width meldet die Länge von bits_in, und method ist stets reflected_gray, damit nachgelagerter Code verzweigen kann, ohne Formen zu erschnüffeln. Fehlendes value, fehlende direction, nichtbinäre Ketten, nicht unterstützte Richtungsbezeichnungen und übermäßige Bitbreiten scheitern alle mit invalid_input und werden nach Ablehnung der Validierung nicht berechnet. Verwenden Sie bits_out allein, wenn ein Mensch oder Bericht eine einzelne Zeile braucht; verwenden Sie das volle Objekt, wenn automatisierte Prüfer Richtung, Breite und Methode neben der Ziffernkette prüfen müssen.
API-Nutzung, Preise, Unterrichtsabläufe und praktische Grenzen
Rufen Sie den kostenlosen Gray-Code-Konverter im Browser für Hausaufgabenprüfungen, Vorlesungsdemos, Drehgeber-Labore und schnelle Verifikation auf, ohne ein Wegwerfskript zu schreiben. Bevorzugen Sie unterrichtstaugliche Breiten für benotete Orakel und halten Sie die Bitlänge innerhalb der veröffentlichten Obergrenze für Isolatsicherheit. Senden Sie einen JSON-Körper mit den Pflichtfeldern value und direction, oder nutzen Sie die dokumentierten Aliasse, wenn Ihr Client sie bereits anders benennt. Nutzen Sie die vorausbezahlte API, wenn eine Tutorenplattform, eine Coding-Assessment-Sandbox, eine Firmware-Toolchain oder ein Dokumentationsgenerator einen stabilen Vertrag unter KIT-Guthaben zu $0.002 pro erfolgreichem Element braucht; Validierungsfehler verbrauchen nie Guthaben. Kombinieren Sie diesen Endpoint mit binären oder hexadezimalen Formatierern, wenn eine Lektion mehrere Kodierungen durchläuft, oder mit Wahrheitstabellen- und Karnaugh-Werkzeugen, wenn Lernende Gray-Adjazenz mit Ein-Bit-Übergängen verbinden. Autoren, die SDKs ausliefern, können bits_out direkt in UI-Beschriftungen, CLI-Flags oder generierte Kommentare mappen, die die Gray-Form neben der originalen Binärkonstante zeigen.
Integrationsbeispiele
Hausaufgaben- und Prüfungskontrolle
Lernende wandeln Binärwörter in reflektierten Gray-Code und zurück um, vergleichen Bitketten und erhalten einen klaren invalid_input-Fehler, wenn versehentlich ein nichtbinärer Wert gesendet wird.
Tutorenplattformen und Auto-Bewerter
Lektionsbauer und Coding-Sandboxes rufen einen vorausbezahlten JSON-Vertrag auf, um Binär↔Gray-Antworten im großen Maßstab zu prüfen, ohne reflektierte Gray-Logik in jedem Stack neu zu implementieren.
Technische Fragen
Wie wandle ich Binär in Gray-Code mit diesem Werkzeug um?
Senden Sie JSON mit value gleich einer Bitkette oder einer nichtnegativen Ganzzahl (zum Beispiel value: "1011") und direction: "binary_to_gray". Das Feld bits_out ist die reflektierte Gray-Code-Kette.
Wie wandle ich Gray-Code zurück in Binär um?
Verwenden Sie direction "gray_to_binary" (oder from_gray) mit der Gray-Bitkette in value. Das Antwortfeld bits_out ist die wiederhergestellte Standard-Binärkette.
Ist der Gray-Code-Konverter kostenlos?
Das Browser-Werkzeug läuft kostenlos auf Ihrem Gerät. API-Aufrufe nutzen vorausbezahltes KIT-Guthaben zu $0.002 pro erfolgreichem Element; Validierungsfehler werden nicht berechnet.