Gray Code:
This is also called unit distance code or reflected code. This coding system has a property that there is only one bit change between consecutive gray codes. The following table would show gray codes of decimal values.
Binary to gray conversion:
Starting from right to left
 If it is MSB then place it as it is
 Otherwise, Add the bit to the previous bit and place the sum in GRAY, ignoring any carry
 Repeat step 2 till end
Eg. Convert 1011 to gray
Gray to Binary conversion:
Starting from right to left
 If it is MSB then place it as it is
 Otherwise, Add the bit to the previous than corresponding bit of GRAY code and place the sum in GRAY, ignoring any carry
 Repeat step 2 till end
Eg. Convert 1110 to gray
