Код Грея

Двоичный код ↔ код Грея

Неотрицательное целое

Нашли ошибку или хотите предложить улучшение?

Улучшить калькулятор «Код Грея»

Теория

Код Грея — способ нумерации, при котором соседние числа отличаются ровно одним битом: \(0, 1, 3, 2\) вместо \(0, 1, 2, 3\). Это убирает «дребезг» в датчиках поворота: при переходе между соседними позициями меняется один контакт, а не несколько сразу.

Преобразование в код Грея: \(G = B\) XOR \((B >> 1)\) — число складывается побитово со своим сдвигом. Обратное восстановление идёт слева направо с накоплением.

Важно: в коде Грея нельзя сравнивать числа как обычно — порядок значений не совпадает с порядком двоичной записи.

Пример с решением

  1. Условие. Переведите число 5 в код Грея.
  2. Формула. \(G = B \oplus (B >> 1)\).
  3. Подстановка. \(5 = 101_2\), сдвиг вправо — \(010_2\).
  4. Вычисление. \(101\) XOR \(010 = 111\).
  5. Ответ. \(5 \to 111\) (7 в обычной записи). Калькулятор с числом 5 в режиме «В код Грея» покажет 111; обратный режим восстановит 5.

Главное

  • Соседние числа отличаются одним битом.
  • Прямое: \(G = B \oplus (B >> 1)\).
  • Применение — датчики поворота, бездребезговая нумерация.