I understood the purpose of gray codes in a clear way. EE Times: Gray Code Fundamentals
But I am not able to conceptually understand why the gray code can be generated as below
Gi = Bi+1 ⊕ Bi , i = n − 1, . . . , 0, where Bn is taken as 0.
Could someone help me on this conceptually.
When you look into Wikipedia, you will see that it is:
Does that make more sense? Check this for the Graycodes given in the pages you've read - you'll see it holds.
Would you like to see a proof of the above, or is looking at the examples enough?