Program dediğin şey bilgisayara verdiğin talimatlardan öte bir şey değildir. Program, işletim sistemi tarafından bilgisayarın ram´ine yüklenir ve işlemci tarafından hesaplatılır. İşlenen sonuç kullanıcıya geri döndürülür. Bütün programlar bu şekilde çalışır.
Bilgisayar, insanların yazdığı C, C++, C#, Java, Python gibi dilleri anlamaz. Bu dillerin derlenmesi ya da yorumlanması gerekir. Bu sayede program bilgisayarın anladığı makine koduna dönüştürülür. Makine kodu denilen şey de aslında 1´lerden ve 0´lardan oluşan sinyallerden öte bir şey değildir.
Her program her işlemcide çalışıyormuş gibi görünse de aslında farklı işlemcilerin farklı instruction setleri vardır. İşlemci üreticisi şu, şu, şu kurallar dahilinde şu, şu, şu komutları verirsen işlemciden istediğin sonucu ve performansı alırsın diyorlar. Buna göre yazılan derleyiciler de bir programlama dilini derlerken üzerinde çalıştığı sistemin işlemcisine uygun olacak bir şekilde derleme gerçekleştirirler.