But all things have cleared away.
There are two differences between them.
1. The maximum size of number that each CPU can deal with.
I found an interesting site:
The below explains quite well about the difference.
2. The maximum size of memory size that can be effectively used.
This is because of 1., I think.
Since the maximum number 32 bit can express is up to 2^32 ~ 4*10^9,
it makes no sense to mount more-than-4GB memory on PC with a 32bit CPU.
And you can effectively use 2^64 ~ 10^19 byte memory on 64bit machine, theoretically.
Notice that ONE address is assigned to memory by ONE byte.