Instrukční sada

Formát instrukce a instrukční sada

Velikost instrukce odpovídá počtu vstupních signálů. Moderní procesory mají 64 vstupních signálů. Instrukce se dělí na dvě části:

  • typ instrukce – toto říká, co procesor má udělat.
  • data – většina instrukcí vyžaduje ještě nějaké informace navíc. Může jít například o adresu v paměti nebo konkrétní hodnotu která se má někam uložit, například pro dokončení nějaké matematické operace.

Každý procesor je postavený pro specifickou instrukční sadu – to je prostě jenom dokument nebo návod, který pojmenovává všechny instrukce, které procesor umí. Nejmodernější instrukční sady jsou:

  • x86 – staré počítače a procesory. Šířka instrukce: 32
  • x86-64 – rozšíření x86, prakticky ve všech počítačích a notebocích všude na světě. Šířka instrukce: 64
  • ARM – mobilní telefony a tablety. Šířka instrukce: 32 a 64 (ARM64)

Zajímavost: oficiální dokumentace k x86-64 má 2198 stránek a k ARM64 má 8538 stránek

Moderní procesory znají tisíce různých instrukcí a průměrnej ajťák jich zná maximálně pár a slyšel o nich naposled někde na vejšce. Dnes už velice vzácně přímo na instrukcích programují ajťáci, kteří potřebují vymáčknout z počítače co nejvyšší výkon – například vyrábí počítačové hry. Potřebují se pohybovat na vrstvě signálů pro procesor, práce ve vyšší vrstvě není tak efektivní.

Instrukční sady nelze (většinou) kombinovat.

  • Program napsaný pro instrukční sadu x86 nespustíš pod instrukční sadou ARM a naopak
  • Program pod x86 spustíš pod instrukční sadou x86_64 ale ne naopak

Teplota a spotřeba energie u procesoru

Různé instrukce jsou různě náročné. Pokud procesor provádí spoustu intenzivních matematických výpočtů, zaměstnává tím obvody které produkují spoustu tepla a spotřebovávají více energie. Proto procesory vyžadují nějakou formu chlazení.

Rychlost procesoru

Jak rychle putuje elektřina v obvodech procesoru? Rychlostí světla (cca 299792 km/s). Technologie procesorů už dospěla do stavu, kdy rychlost světla je limitující faktor: je čím dál těžší postavit elektrický procesor, který by byl nějak podstatně rychlejší.

Většina moderních procesorů pro domácí použití by shořela kdyby rychlost procesoru nebyla nijak řízená. Proto jsou procesory řízené frekvencí se kterou instrukce dostávají (5 Ghz = 5 miliard instrukcí za vteřinu). Výrobci procesorů balancují hodnoty frekvencí mezi teplotní stabilitou a výkonem.

Zajímavost: V moderním počítači už ve skutečnosti nic neshoří. Moderní PC obsahují bezpečnostní čidla a jakmile teplota procesoru přesáhne nějakou hranici, frekvence procesoru se drasticky sníží třeba jen na 5-10% výkonu. Počítač začne být extrémně pomalý ale procesor přežije.

Overclocking je název pro zvýšení této frekvence nad doporučovaný údaj od výrobce procesoru (potom je nutné kvalitní chlazení aby se procesor nezníčil), toto je oblíbená praxe různých hráčů, kteří chtějí z výkonu svého počítače vymáčknout maximum.

Shrnutí

  • Instrukce procesoru se dělí na typ instrukce a data.
  • Nejpoužívanější instrukční sady dnešní doby jsou x86, x86-64 a ARM.
  • Procesory vyžadují chlazení.
  • Procesory běží na stanovené frekvenci. Výrobci balancují mezi rychlostí procesoru a jeho fyzickou stabilitou. Overclocking je zvýšení frekvence nad limity doporučované výrobcem.