Print 0-255 in grey code Gray Code is a number system where only 1 bit of the number changes from one number to the next number.  Print the 8 bit Gray Code values of 0 to 255.

Shortest Code wins!

Start of output:

 0 00000000
 1 00000001
 2 00000011
 3 00000010
 4 00000110
 5 00000111
 6 00000101
 7 00000100
 ...


You only have to print the Gray Code in binary.  The decimal numbers in the example are just for reference.
Ruby, 48 33 Bytes

15 Bytes saved thanks to G B

256.times{|i|puts "%08b"%(i^i/2)}