Well I'm building a computer and my mom has an extra copy of Windows 7, but its only 32bit. The computer I'm building is going to have 8gb of RAM. Since that much RAM isn't supported is there a way to upgrade from Windows 7 32bit to Windows 7 64bit without paying a lot of money?
I don't think there is such an "upgrade". BUT, check carefully what your mother has. When I bought my copy of Win 7 (an upgrade package, since I have a licensed legit XP running), I understood it contained BOTH 32-bit and 64-bit versions, and only one of them could be installed. If your mother's spare copy is like that, you already have a 64-bit version to install.
All copies contain both a 32-bit and 64-bit. As long as you have a copy of the 64-bit version, you can "upgrade" to it by doing a clean install.
EDIT: Not all copies have both. The OEM version, which can only be install on 1 computer anyway, only comes with one or the other. The student discounted version also only comes with one copy of one version. All retail versions come with both versions.
The max amount of RAM 32-bit can use is 3.5 GB. So yes in theory. Whether or not it's noticeable will depend on a number of factors.
What are you using the computer for? If it's for gaming, you don't need more than 4 GB anyway, so 8's just overkill. With that extra $100 or so you're spending on RAM right now, you could just pick up an OEM copy of the 64-bit version and be ready for any upgrades down the line.
Re: the graphics card question, all systems use part of the address-generating capability of the system to generate addresses on the graphics card's RAM. With a 32-bit OS, even on hardware that can handle more address range, the maximum address that can be used is 4 GiB. So the addresses devoted to accessing RAM on the video card MUST fall within that range. The common practice is to have it use the area just under the top end. The computer directs all traffic to those addresses to the video card RAM, and does not ever try to use any main board RAM that might fall into those same addresses, whether there is any real RAM there or not. The net result is that video card RAM MAY be a bonus extra for you if you do not have mainboard RAM right up to the 4 GiB limit, because in that situation there is no unused mainboard RAM hiding behind the video RAM. But if you have 4 GiB of mainboard RAM, whatever size RAM you have in the video card (e.g., 512 MB) will NOT be usable for other purposes.
In a 64-bit system, however, the top end of the address space is so up there I'm not going to worry how far away. Using the same organization principle, though, it is always easy for the OS to assign for video RAM use some area of the address space that is above the upper end of mainboard RAM so there is no overlap and "wasted RAM".
So, "combine" is not quite the right word, in the sense that video card RAM is not always added on to mainboard RAM. In cases where you do not have the full 4 GiB on your mainboard (like my machine) it is, but not for someone who fills up the RAM slots. Still, it IS combined in the sense that all RAM must share the total addressable RAM space.
The addressable space is what I meant by combined. I knew that it did it in windows XP, but I remember reading somewhere that in Vista (and presumably 7) that they made up another set of addressable space for videocard RAM to live in(and anything else that lives there) so that it didn't conflict with main system RAM and allowed an actual 4 gigs of system RAM to be fully used. I was checking to confirm this since I haven't used a 32-bit other than XP.
I have read of one sort of kludgy system that was used in Windows BEFORE XP to allow video RAM to be addressed above the 4 GiB boundary. But apparently it was not reliable and M$ disabled it in XP and all versions thereafter. I have never heard of any way to exceed the 4 GiB limit in addressing in any Microsoft 32-bit OS from XP forward. I suppose there may be third-party software tools for this trick, but I don't know.
I still say, check exactly what that copy of Win 7 your mother has contains. It might have the 64-bit version you need to do this right.