Chuck Davis said:
Don't relate 64 bit as twice the size as 32 bit. True, the instructions each
contain twice as many bits. But they allow for far greater addressing
capability. 32-bit addressing limited one to 4GB.
Right, and that 4GB 32-bit address space must be used to address video
memory, and other memory and registers on your PCI and other expansion
cards. The result is that a 32-bit machine can access 3.5 GB or
sometimes 3.0 GB of system RAM. See
http://members.cox.net/slatteryt/RAM.html for a discussion of this.
The 64-bit version of XP (I assume it's also true of Vista) implements
a 37-bit address space, which allows for 128GB of RAM. Again, some of
that space would be used for video RAM and other things, but that
leaves *plenty* of address space.
Assume that a 32-bit address space is equivalent to the height of a 10 story
building, then a 64-bit address space is equivalent the distance from the
Earth to the Sun.
Well....2**32 is 4,294,967,296; while 2**64 is
18,446,744,073,709,551,616. That's a *huge* address space, if the max
is ever implemented. Also, it makes some things easier for the
programmer and hardware. Consider a program that tells you how much
disk space is available, and how much you've used. Disks can be in the
hundreds of GB these days, that's quite a bit bigger than 2**32. That
means that some kind of kludge (sometimes hardware-assisted, I think)
must be used to handle those totals in a 32-bit system. But a 64-bit
system could handle that in its normal integer representation, no
problem whatsoever.
With an 18.45 exabyte disk and a large enough battery, we could have set up
a video camera 19,500 years ago, during the last ice age, and let it record
continually day and night, it would just be filling up the disk now.
Yeah, but when would you find time to watch it?