Ce este un set de instrucțiuni?

Un set de instrucțiuni, sau o arhitectură de set de instrucțiuni, este setul colectiv de comenzi pe care un procesor de computer le poate executa. Tot ceea ce face un computer, de la rularea unei aplicații de procesare de text până la codificarea fișierelor video, se poate reduce la o combinație a acestor comenzi. Programatorii nu creează direct programe prin aceste instrucțiuni, ci folosesc un tip special de software cunoscut sub numele de compilator care traduce codul de programare în instrucțiuni de mașină. Majoritatea computerelor personale folosesc un set de instrucțiuni care a fost folosit pentru prima dată în anii 1970, în timp ce smartphone-urile, tabletele și alte dispozitive folosesc seturi de instrucțiuni mai simple, optimizate pentru medii cu consum redus.

Calculatoarele pot părea capabile de sarcini nelimitate, dar microprocesoarele din interiorul lor sunt capabile doar să execute un număr limitat de comenzi predefinite, cunoscute sub numele de instrucțiuni. Pe cont propriu, fiecare instrucțiune este relativ simplă, spunându-i probabil procesorului să adauge două numere sau să mute o bucată de date dintr-o locație în alta. Atunci când sunt combinate, aceste instrucțiuni de bază devin destul de puternice și sunt folosite ca bază pentru toate tipurile de software. Performanța și compatibilitatea unui procesor sunt direct legate de numărul și tipul de instrucțiuni pe care le suportă procesorul, făcând din setul de instrucțiuni un element critic în succesul comercial sau eșecul oricărui design nou.

Un CPU poate îndeplini doar funcții care fac parte din setul său de instrucțiuni, dar foarte puțini programatori de computere încorporează aceste comenzi în software-ul lor. În schimb, se folosește un pas intermediar cunoscut sub numele de compilare. În acest proces, un program cunoscut sub numele de compilator traduce codul prietenos cu oamenii, folosit de programatori, într-un „cod mașină” pe care procesorul îl înțelege. Deoarece diferite procesoare de computer acceptă seturi de instrucțiuni diferite, un compilator trebuie proiectat pentru tipul de procesor pe care programul este destinat să ruleze. Cu microprocesoarele moderne capabile să execute până la sute de milioane sau chiar miliarde de instrucțiuni într-o singură secundă, compilatoarele au devenit singurele mijloace practice de a crea software pentru computere.

Microprocesoarele utilizate în aproape toate computerele personale vândute începând cu anii 1980 folosesc un set de instrucțiuni numit x86, care a fost proiectat inițial pentru un procesor Intel® care a debutat la mijlocul anilor 1970. Dorința de compatibilitate inversă a ajutat la menținerea x86 dominantă pe piața PC-urilor, deși noi instrucțiuni sunt adăugate ocazional prin extensii. Multe smartphone-uri, tablete și alte tipuri de electronice de larg consum folosesc microprocesoare bazate pe setul de instrucțiuni ARM, care este mai simplu și mai eficient din punct de vedere energetic decât x86. Serverele de vârf, super computerele și alte dispozitive specializate, cum ar fi consolele de jocuri, pot folosi seturi de instrucțiuni diferite.