eggbrook :
Actually 32bit systems can only see 3.5 gigs of ram, not 4. So if you want to see your last 1.5 gigs of ram go with 64bit.
32 bit systems have a 32 bit virtual address space. The physical address space is actually much higher, usually a minimum of 36 bits. This means that while the size of a virtual memory space is limited to 32 bits, the size of the physical address space is much larger. Installing a video card or other PCI peripheral with its own memory will result in that memory having to be mapped in to the same 32 bit virtual memory space. This means that it will occupy a chunk of the virtual address space that would otherwise be used by RAM. It does not however occupy any of the physical address space. Thus, since PAE can make the additional memory virtually addressable by using a segment this allows all 36 bits to be used in a 32 bit OS and thus the OS can actually see up to 64GiB of physical memory with any particular virtual address space having up to 4GiB (including shared and reserved) of which an application can use up to 3GiB. It's important to realize the difference between a physical address space and a virtual one.
So why do 32 bit versions of Windows XP, Vista and 7 only show 4GB? They're software limited for marketing purposes.
The 32 bit server versions which are Windows Server 2003, 2003 R2 (Windows NT 5.1 and 5.2 which are two different versions of XP), and Windows Server 2008 (NT 6.0 aka Vista) can all support up to 64GB (theoretically the support is higher but most chipsets only run 36 physical address lanes).
I hate it when people say that 32 bit Windows can only see 3.5GB of RAM because that's an erroneous way of putting it. The exact amount of "usable" RAM will be something less than 4GB but not necessarily 3.5, it depends on the size of the various memory mapped peripherals
There even exist patches which break the 4GB software limitation for 32 bit versions of XP, Vista and Windows 7 but they can be somewhat unstable