Тхе Греи Цоде је низ бинарних бројевних система, који је такође познат као рефлектовани бинарни код . Разлог за позивање овог кода као рефлектованог бинарног кода су прве Н/2 вредности у поређењу са онима последњих Н/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 |