Instrukce procesoru

Procesor je hodně zjednodušeně elektronický čip, který umí přijmout nějakou kombinaci bitů na vstupu a na základě této kombinace vyprodukovat jinou kombinaci bitů na výstupu. Instrukce procesoru Na obrázku níže je příklad instrukce, jejíž podoba je 010011. Toto není reálná instrukce, pouze příklad. Instrukcemi se budu podrobněji zabývat ještě jednou v pozdější kapitole. Instrukce procesoru

1 min · 55 slov · Miroslav Thompson

Šířka instrukce

Šířka instrukce je počet bitů v instrukci. Každý procesor je vyrobený na danou šířku instrukce. U moderních počítačů je šířka instrukcí 64 bitů. Jedna instrukce v moderním procesoru může vypadat například takto: 0100111000110010111010001111110001001110001100101110100011111100 Toto je pouze příklad. O tom co ty instrukce dělají a co jednotlivé bity znamenají si povíme později. ⚠️ Důležité k zapamatování: Procesor na vstupu zpracovává instrukce sériově tedy za sebou, jednu po druhé. Vstupní instrukce procesoru

1 min · 70 slov · Miroslav Thompson

Frekvence a cyklus procesoru

Moderní procesory mají frekvence mezi 2 až 5 GHz což je 2 až 5 miliardy cyklů za vteřinu. Cyklus procesoru si můžete představit jako jeden krok potřebný pro splnění nějaké vstupní instrukce. Cyklus procesoru

1 min · 34 slov · Miroslav Thompson

CPU pipeline

Moderní procesory zpracovávají instrukce v několika krocích a to je různé procesor od procesoru. Některé procesory mohou potřebovat 10 některé až 30 kroků k vykonání některých instrukcí. Tyto postupy si lze představit jako seznam kroků, který je potřeba dokončit pro vykonání dané instrukce. V angličtině se tomu říká CPU pipeline. Cyklus procesoru ⚠️ Důležité k zapamatování: Mechanismus “CPU pipeline” je odlišný procesor od procesoru. Běžný ajťák nezná a nepotřebuje vědět, jak procesorová pipelina konkrétního procesoru funguje....

1 min · 76 slov · Miroslav Thompson

Počet cyklů

U moderních procesorů za běžného provozu je prakticky nemožné odhadnout, kolik cyklů jaká instrukce zabere z následujících důvodů. Prediktivní mechanismy Moderní procesory si ukládají krátkodobou statistiku nejpoužívanějších instrukcí a jejcih výsledků. V některých krocích se tedy snaží odhadnout výsledek, aby mohly hromadu dalších kroků přeskočit a být tak rychlejší. V nějaký moment si však musí ověřit, že skutečný výsledek je totožný s predikcí. Pokud predikce selže, musí se celá mašinérie CPU pipeline vrátit o několik kroků zpátky a instrukce se musí provést v jednotlivých krocích řádně, bez použití prediktivních kroků....

1 min · 197 slov · Miroslav Thompson

Výstupní bity

“Výstupní bity” jsou instrukce prováděné procesorem na zbytku systému v počítači. Toto jsou konkrétní elektronické signály, kterým procesor instruuje všechny ostatní komponenty v počítači okolo sebe, samozřejmě na základě vstupních instrukcí. Výstupní bity procesoru ale nemají žádnou pevnou šířku, dokonce ani žádný společný kanál, kterým putují všechny instrukce, jako je to u vstupních bitů. Komplexita výstupních bitů ⚠️ Důležité k zapamatování: Výstupní bity běžné ajťáky nezajímají. Toto “zadrátování” se liší podle patice procesoru což je fyzická zásuvka, do které se na základní desce procesor umisťuje....

1 min · 85 slov · Miroslav Thompson

Stav procesoru

Ihned po zapnutí počítače zůstává procesor vypnutý 1. Procesor je z historických důvodů 2 postavený tak, že při svém zapnutí okamžitě příjmá instrukce a jakmile je všechny spustí až do konce, tak se zase vypne. Při zapnutí počítače však není možné, aby procesor přijímal instrukce protože není vůbec jasné, odkud se ty instrukce mají vzít. O to se v moderních počítačích stará základní deska. Jakmile základní deska zjistí, odkud má procesor číst instrukce tak procesor zapne a rovnou mu řekne, kde se instrukce nachází....

1 min · 211 slov · Miroslav Thompson

Instrukční sada

Instrukční sada je předepsaná norma podle které je procesor vyrobený a s tím souvisí i jaké instrukce podporuje a jak se tyto instrukce chovají. Moderní a běžné instrukčnísady jsou: x86 – starší počítače a procesory. Šířka instrukce: 32 x86-64 (nebo jen x64) – rozšíření x86, prakticky ve všech počítačích, notebocích a serverech všude na světě. Šířka instrukce: 64 ARM – mobilní telefony a tablety Šířka instrukce: 32 a 64 (ARM64) ⚠️ Některé instrukční sady lze zaměnit, některé ne....

1 min · 176 slov · Miroslav Thompson

Instrukce - detailní pohled

Předpokládejme, že máme nějaký starší procesor s pevně danou 16 bitovou šířkou. Řekněme, že se v našem 16 bitovém procesoru spouští následující instrukce. 1011101001101011 Tato instrukce se skládá ze dvou částí 1: 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....

1 min · 87 slov · Miroslav Thompson

Variabilní délka instrukce

Doposud jsem v tomto návodu mluvil o tom, že procesory mají fixní délku instrukce např. 32 nebo 64 bitů. Realita je bohužel složitější. Instrukční sady x86 a potažmo i x86_64 mají proměnlivou délku instrukce tzn. instrukce může mít délku mezi nějakým minimálním a maximálním počtem bitů. U x86_64 je tento rozsah mezi mezi 8 až 120 bity přičemž některé instrukce umožňují seskupovat více instrukcí do sebe tzn. v rámci spuštění jedné velké instrukce se provede více operací najednou....

1 min · 86 slov · Miroslav Thompson