Što je skup uputa?

Skup instrukcija ili arhitektura skupa instrukcija je kolektivni skup naredbi koje procesor računala može izvršiti. Sve što računalo radi, od pokretanja aplikacije za obradu teksta do kodiranja video datoteka, može se svesti na neku kombinaciju ovih naredbi. Programeri ne stvaraju izravno programe putem ovih uputa, već koriste posebnu vrstu softvera poznatu kao kompajler koji prevodi programski kod u strojne upute. Većina osobnih računala koristi skup uputa koji je prvi put korišten 1970-ih, dok pametni telefoni, tableti i drugi uređaji koriste jednostavnije skupove uputa optimizirane za okruženja niske potrošnje.

Čini se da su računala sposobna za neograničene zadatke, ali mikroprocesori unutar njih mogu izvršiti samo ograničen broj unaprijed definiranih naredbi, poznatih kao instrukcije. Sama po sebi, svaka je instrukcija relativno jednostavna, možda govori procesoru da doda dva broja ili da premjesti dio podataka s jednog mjesta na drugo. Kada se kombiniraju, ove osnovne upute postaju prilično moćne i koriste se kao osnova za sve vrste softvera. Izvedba i kompatibilnost CPU-a izravno su povezani s brojem i vrstom instrukcija koje CPU podržava, čineći skup instrukcija kritičnim elementom u komercijalnom uspjehu ili neuspjehu bilo kojeg novog dizajna.

CPU može izvoditi samo funkcije koje su dio njegovog skupa instrukcija, ali vrlo malo računalnih programera ugrađuje te naredbe u svoj softver. Umjesto toga, koristi se međukorak poznat kao kompajliranje. U ovom procesu, program poznat kao kompajler prevodi ljudski kod koji koriste programeri u “strojni kod” koji procesor razumije. Budući da različiti računalni procesori podržavaju različite skupove instrukcija, kompajler mora biti dizajniran za tip procesora na kojem se program namjerava izvoditi. S modernim mikroprocesorima sposobnim izvršiti čak stotine milijuna ili čak milijarde instrukcija u jednoj sekundi, prevoditelji su postali jedino praktično sredstvo za stvaranje softvera za računala.

Mikroprocesori koji se koriste u gotovo svim osobnim računalima prodanim od 1980-ih koriste skup instrukcija nazvan x86, koji je izvorno dizajniran za Intel® procesor koji je debitirao sredinom 1970-ih. Želja za kompatibilnošću unatrag pomogla je da x86 ostane dominantan na tržištu računala, iako se nove upute povremeno dodaju kroz proširenja. Mnogi pametni telefoni, tableti i druge vrste potrošačke elektronike koriste mikroprocesore temeljene na ARM skupu instrukcija, koji je jednostavniji i energetski učinkovitiji od x86. Vrhunski poslužitelji, super računala i drugi specijalizirani uređaji poput igraćih konzola mogu koristiti različite skupove uputa.