The Код Грея це послідовність двійкових систем числення, яка також відома як відбитий двійковий код . Причиною для виклику цього коду як відображеного двійкового коду є перші значення N/2 порівняно з останніми значеннями N/2 у зворотному порядку. У цьому коді два послідовних значення відрізняються одним бітом двійкових цифр. Коди Грея використовуються в загальній послідовності апаратно згенерованих двійкових чисел. Ці числа викликають неоднозначність або помилки, коли здійснюється перехід від одного числа до наступного. Цей код просто вирішує цю проблему, змінюючи лише один біт під час переходу між числами.
Код сірого є дуже легким кодом, оскільки він не залежить від значення цифри, визначеної позицією. Цей код також називають кодом циклічної змінної, оскільки перехід одного значення до його наступного значення несе зміну лише одного біта.
Як згенерувати код Грея?
Префікс і метод відображення рекурсивно використовуються для генерації коду Грея числа. Для створення сірого коду:
- Ми знаходимо кількість бітів, необхідних для представлення числа.
- Далі ми знаходимо код для 0, тобто 0000, який є таким же, як двійковий.
- Тепер ми беремо попередній код, тобто 0000, і змінюємо його старший біт.
- Ми виконуємо цей процес конфіденційно, доки всі коди не будуть однозначно ідентифіковані.
- Якщо, змінивши старший біт, ми знайдемо той самий код, отриманий раніше, то другий старший біт буде змінено і так далі.
Процес генерації коду Грея
Таблиця кодів Грея
Десяткове число | Двійкове число | Код Грея |
---|---|---|
0 | 0000 | 0000 |
1 | 0001 | 0001 |
2 | 0010 | 0011 |
3 | 0011 | 0010 |
4 | 0100 | 0110 |
5 | 0101 | 0111 |
6 | 0110 | 0101 |
7 | 0111 | 0100 |
8 | 1000 | 1100 |
9 | 1001 | 1101 |
10 | 1010 | 1111 |
одинадцять | 1011 | 1110 |
12 | 1100 | 1010 |
13 | 1101 | 1011 |
14 | 1110 | 1001 |
п'ятнадцять | 1111 | 1000 |