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