Калькулятор позволяет конвертировать заданное число в код Грея, и делать автоматическое обратное преобразование.
Свойство этих кодов заключается в том, что при изменении числа на соседнее, двоичные биты составляющие его , изменялись только в одной позиции.
Dec Bin Gray
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
11 1011 1110
12 1100 1010
13 1101 1011
14 1110 1001
15 1111 1000
Как видите, у соседних чисел представленных кодом Грея, меняется только один, и только один бит.
Где это может применяться? Например в биологии когда цепочку генома можно закодировать кодом Грея, и тогда минимальная мутация в одной позиции, будет означать изменение в одной позиции кода Грея, а значит число в десятичной системе будет отличаться лишь на единицу.
Код Грея, можно создавать только для двоичных представлений числа, в других системах счисления, кодов подобных коду Грея, создать нельзя.
Но! Нам никто не запрещает взять любое целое число в любой системе счисления, перевести в двоичный вид, применить код Грея и вернуть обратно в исходную систему счисления.
Наш калькулятор это и делает. Он выдает результат как в исходной системе счисления, так и в двоичной. На мой взгляд это очень удобно.
Например, взяв нашу десятичную систему счсиления и тогда число 343 в коде Грея выглядит так 508. Одним кликом число 343 перевелось в двоичную, из него получили код Грея и снова перевели в десятичную.
Как преобразовывать числов код Грея и обратно, лучше чем в Википедии не написано. Оттуда же взяты и алгоритмы.
Некоторые примеры, преобразований
Входные данные
1010100101000010100101010101010101
Ответ:
Из исходного в код Грея |
 |
Из кода Грея в исходное |
 |
Входные данные
0101110
Ответ
Из исходного в код Грея |
 |
Из кода Грея в исходное |
 |