Gray Series - 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 Series

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)

    In vain to me the smiling Mornings shine,
    And redd’ning Phoebus lifts his golden Fire:
    The Birds in vain their amorous Descant join;
    Or cheerful Fields resume their green Attire:
    —Thomas Gray (1716–1771)

    ... 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–?)