Will a 64-bit CPU run a 32-bit program on a 64-bit version of an OS?
Yes it will. 64-bit systems are backward-compatible with their 32-bit counterparts.
Will a 64-bit OS run a 32-bit application on a 64-bit processor?
Yes it will. Again, this is because of backward compatibility.
Can 64-bit applications contain 32-bit code?
Yes, many times 64-bit software will contain portions of 32-bit code. Similarly 32-bit software (usually very old programs) can have some code in 16-bit which is why those 32-bit applications will usually fail to run properly on a 64-bit OS.
Can 16-bit applications or code run on 64-bit systems?
No, as we said previously. 16-bit code will NOT run on 64-bit OS because the designers did not provide backward-compatibility. This is one reason why some 32-bit programs will not work on 64-bit operating systems.
Can a 64-bit CPU with a 32-bit host OS run a virtual machine (VM) for a 64-bit guest OS?
Yes. It all depends upon the level of virtualization. With software virtualization it is hardly likely to work, or if it does work it may be very slow. Hardware virtualization will need to be supported by the CPU (e.g. with Intel-VT or AMD-V) and the BIOS.
Can I run Windows 2000 and Windows XP on a 64-bit CPU, and use old software?
Yes, a 32-bit OS (Windows 2000 or XP) will run on a 64-bit processor. You should also be able to run older 32-bit software on a 64-bit OS.
Is a Windows Vista or Windows 7 license key valid for both 32-bit and 64-bit versions?
Yes, unless you have an OEM version. If it was installed on your computer when you bought it and you only have one Windows disk then it is almost certainly an OEM version and you will have to buy the other bit version if you want it. If you have two disks, one for 32-bit Windows and one for 64-bit Windows, then you have a non-OEM version so you get to choose which bit version you will use without having to buy another license. See Microsoft Answers for a discussion of these issues. Remember, if you have only bought one license then, even if you have both bit versions on disk, you are only licensed to install and run one version on one computer.
How do I migrate my 32-bit system to 64-bit Windows?
There is no upgrade path from 32-bit to 64-bit Windows only from 64-bit Windows. You will almost certainly have to do a clean install of your 64-bit operating system, copy back your data files, and reinstall your 32-bit applications. If you want to keep your old install then you can try dual booting or virtualization.