Un computer in generale non è direttamente in grado di eseguire i programmi scritti in un linguaggio di programmazione ad alto livello quale quelli che verranno discussi di seguito.Il computer è in grado di eseguire direttamente un linguaggio molto semplice chiamato linguaggio macchina.
La traduzione del linguaggio ad alto livello al linguaggio macchina viene fatta da appositi programmi i "Compilatori" e gli "Interpreti".
Per risolvere problemi con un computer non è necessario conoscere a fondo la macchina, ma è invece essenziale conoscere a fondo il linguaggio di programmazione che si utilizza.
Nota: un linguaggio di programmazione vicino a un linguaggio naturale (italiano, inglese...) è considerato di alto livello mentre è di basso livello se si avvicina al linguaggio della macchina.