It's because 32-bit OS'es were designed only to have up to 3GB of RAM show up. If you install a 64-bit OS such as linux you will see that all of the 4GB will show up. If you want the extra RAM and get a little extra performance you can install a new 64-bit Windows OS. You can get away with running 32-bit for only so long.
@Sureboss, the graphics card has it's own memory on the card to make use of. So that 1GB would not just magically appear on the graphics card.