14 lines
241 B
Text
14 lines
241 B
Text
func bin2gray(n) {
|
|
n ^ (n >> 1);
|
|
}
|
|
|
|
func gray2bin(num) {
|
|
var bin = num;
|
|
while (num >>= 1) { bin ^= num };
|
|
return bin;
|
|
}
|
|
|
|
0..31 -> each { |i|
|
|
var gr = bin2gray(i);
|
|
printf("%d\t%b\t%b\t%b\n", i, i, gr, gray2bin(gr));
|
|
}
|