Gray Code - Converting To and From Gray Code

Converting To and From Gray Code

The following functions in C convert between binary numbers and their associated Gray codes.

/* The purpose of this function is to convert an unsigned binary number to reflected binary Gray code. The operator >> is shift right. The operator ^ is exclusive or. */ unsigned int binaryToGray(unsigned int num) { return (num >> 1) ^ num; } /* The purpose of this function is to convert a reflected binary Gray code number to a binary number. */ unsigned int grayToBinary(unsigned int num) { unsigned int numBits = 8 * sizeof(num); unsigned int shift; for (shift = 1; shift < numBits; shift = 2 * shift) { num = num ^ (num >> shift); } return num; }

Read more about this topic:  Gray Code

Famous quotes containing the words converting, gray and/or code:

    A way of certifying experience, taking photographs is also a way of refusing it—by limiting experience to a search for the photogenic, by converting experience into an image, a souvenir. Travel becomes a strategy for accumulating photographs.
    Susan Sontag (b. 1933)

    Love is the hardest thing in the world to write about. So simple. You’ve got to catch it through details, like the early morning sunlight hitting the gray tin of the rain spout in front of her house. The ringing of a telephone that sounds like Beethoven’s “Pastoral.” A letter scribbled on her office stationery that you carry around in your pocket because it smells of all the lilacs in Ohio.
    Billy Wilder (b. 1906)

    ... the self respect of individuals ought to make them demand of their leaders conformity with an agreed-upon code of ethics and moral conduct.
    Mary Barnett Gilson (1877–?)