I had a long explanation but it got eaten by my browser
There are hardware (64 bit capable CPUs for physical addressing) and software issues (64 bit Operating Systems) but basically it is the operating system that manages the memory that an application can use and not the application itself.
A 32 bit operating system can handle approximately 4GB of addressable memory. This is because each bit in the address can only be a 1 or 0 so 2^32 addresses equals roughly 4GB (there is some overhead in windows for reserved spaces etc). Most 32 bit Windows systems will show that it recognizes 3.5GB of RAM because of the overhead and other reasons that I wont get into.
A 64 bit operating system can handle 2^64 addresses which is roughly 18 million gigabytes (more than anyone can possibly put in their computer right now). That means that a 64 bit operating system is required to address all 12GB of RAM that you have. Most 32 bit applications can still run fine in a 64 bit environment. The operating system just manages them differently than they would a 64 bit application.
Hope this helps
Twins
Connect With Us