gray2num ±×·¹ÀÌ ºÎÈ£¸¦ Á¤¼ö·Î º¯È¯ÇÑ´Ù
unsigned gray2num(unsigned gray);
gray ±×·¹ÀÌ ºÎÈ£
±×·¹ÀÌ ºÎÈ£¿¡ ´ëÀÀÇÏ´Â Á¤¼ö
unsigned gray2num(unsigned gray) { unsigned mask; int flag; flag = 0; for (mask = 1 << (sizeof(unsigned) - 1); mask ! = 0; mask >>= 1) { if (flag) { if (gray & mask) flag = 0; gray ^= mask; } else if (gray & mask) flag = 1; } return gray; }