C++ compiler compiles your code into executable file(.exe) that contains CPU-readable machine code consisting of CPU commands. Different CPUs have different architectures and probably different commands. If CPUs have different commands then executable file compiled for my CPU may not run on another computer with another CPU with another architecture and another commands. For example will program compiled on SkyLake core run on KabyLake core and will program compiled on Intel CPU run on AMD CPU. Am I right? If so, is there any way to install right executable file with right commands on computer? Please also answer questions in example.