Co je sada instrukcí?
Instrukční sada nebo architektura instrukční sady je kolektivní sada příkazů, které může procesor počítače provádět. Vše, co počítač dělá, od spuštění aplikace pro zpracování textu po kódování video souborů, lze redukovat na nějakou kombinaci těchto příkazů. Programátoři nevytvářejí programy přímo pomocí těchto pokynů, ale používají speciální typ softwaru známého jako kompilátor, který převádí programovací kód do strojních pokynů. Většina osobních počítačů používá instrukční sadu, která byla poprvé použita v 70. letech, zatímco smartphony, tablety a další zařízení používají jednodušší instrukční sady optimalizované pro prostředí s nízkou spotřebou.
Počítače se mohou zdát schopné neomezených úkolů, ale mikroprocesory uvnitř nich jsou schopny vykonávat pouze omezený počet předdefinovaných příkazů, známých jako instrukce. Každá instrukce je sama o sobě relativně jednoduchá, možná říká procesoru, aby přidal dvě čísla nebo přesunul část dat z jednoho místa na druhé. V kombinaci se tyto základní pokyny stávají docela výkonnými a používají se jako základ pro všechny typy softwaru. Výkon a kompatibilita CPU přímo souvisí s počtem a typem instrukcí, které CPU podporuje, což činí instrukci důležitým prvkem komerčního úspěchu nebo selhání jakéhokoli nového designu.
CPU může vykonávat pouze funkce, které jsou součástí jeho instrukční sady, ale jen velmi málo počítačových programátorů vkládá tyto příkazy do svého softwaru. Místo toho se používá přechodný krok známý jako kompilace. V tomto procesu překládá program známý jako kompilátor kód vhodný pro člověka používaný programátory do „strojového kódu“, kterému procesor rozumí. Protože různé počítačové procesory podporují různé sady instrukcí, musí být kompilátor navržen pro typ procesoru, na kterém má program spustit. Díky moderním mikroprocesorům, které dokážou během jedné sekundy provést až stovky milionů nebo dokonce miliardy pokynů, se kompilátory staly jediným praktickým prostředkem pro vytváření softwaru pro počítače.
Mikroprocesory používané téměř ve všech osobních počítačích prodávaných od 80. let používají instrukční sadu nazvanou x86, která byla původně navržena pro procesor Intel®, který debutoval v polovině 70. let. Touha po zpětné kompatibilitě pomohla udržet x86 dominantní na trhu s PC, i když nové pokyny se občas přidávají prostřednictvím rozšíření. Mnoho chytrých telefonů, tabletů a dalších typů spotřební elektroniky používá mikroprocesory založené na instrukční sadě ARM, což je jednodušší a energeticky účinnější než x86. Špičkové servery, super počítače a další specializovaná zařízení, jako jsou herní konzole, mohou používat různé instrukční sady.