Irregardless of the OS, 32-bit is 32-bit. The OS can only "see" 32-bits worth of memory addresses, no matter how much RAM you install.
2^32 = 4,294,967,296 (4GB). Subtract from this, the address space the OS & hardware needs (see mxyztplk's links above) - this will give you the total of usable memory you can have.
A 64-bit OS can utilize:
2^64 = 18,446,744,073,709,551,616 (18 Exobytes).