One example of a binary grey code follows. Please note the number
of bits that change for each number and the reflections that exist
in the counting system.
0 = 0000
1 = 0001
2 = 0011
3 = 0010
4 = 0110
5 = 0111
6 = 0101
7 = 0100
8 = 1100
9 = 1101
10 = 1111
11 = 1110
12 = 1010
13 = 1011
14 = 1001
15 = 1000
The primary use for this is the elimination of race conditions caused
by changing two bits at the same time.