#include #include unsigned grayToBinary(unsigned g) { g^=(g>>16); g^=(g>> 8); g^=(g>> 4); g^=(g>> 2); g^=(g>> 1); return g; } unsigned binaryToGray(unsigned b) { unsigned g((b>>1)^b); return g; } int main() { unsigned n(0); for(unsigned i(0);i<84;i++) { unsigned j=i+84; unsigned ig(binaryToGray(i)); unsigned jg(binaryToGray(j)); std::cout << "i,j = " << i << ", " << j << ", ig,jg = " << std::hex << ig << ", " << jg << std::dec << std::endl; for(unsigned k(0);k<32;k++) { if((ig&(1<