Procesor je mozog počítača — vykonáva každú inštrukciu v každom programe, ktorý na počítači beží. Bez procesora by počítač nebol nič viac ako zbierka neaktívnych súčiastok.
Čo je CPU?
CPU (Central Processing Unit — centrálna procesorová jednotka) je čip, ktorý číta a vykonáva inštrukcie programov. Tieto inštrukcie sú základné operácie: sčítanie čísel, porovnávanie hodnôt, presúvanie dát v pamäti.
Moderný procesor môže vykonávať miliardy inštrukcií za sekundu — napriek tomu každá inštrukcia je sama o sebe jednoduchá operácia.
Cyklus Fetch-Decode-Execute
CPU pracuje v neustále sa opakujúcom cykle troch krokov:
1. Fetch (Načítanie)
CPU načíta ďalšiu inštrukciu z pamäte (RAM). Adresa aktuálnej inštrukcie je uložená v špeciálnom registri zvanom programový počítadlo (Program Counter).
2. Decode (Dekódovanie)
CPU dekóduje inštrukciu — zistí, čo má urobiť. Napríklad: „sčítaj dve čísla" alebo „ulož výsledok do pamäte".
3. Execute (Vykonanie)
CPU inštrukciu vykoná — napríklad matematickú operáciu v aritmetickej jednotke (ALU) alebo presun dát.
Po každom vykonaní sa programový počítadlo zvýši a cyklus sa zopakuje.
Moderné procesory vykonávajú tento cyklus miliardykrát za sekundu. Procesor s frekvenciou 3 GHz vykonáva 3 miliardy taktov za sekundu. Nie každý takt je jedna inštrukcia — niektoré inštrukcie trvajú viac taktov.
Čo ovplyvňuje výkon CPU?
Taktovacia frekvencia (Clock speed)
Meria sa v GHz (gigahertzoch). Vyššia frekvencia = viac operácií za sekundu. Typické hodnoty: 2–5 GHz.
Počet jadier (Cores)
Moderné procesory majú viac jadier — každé jadro je samostatný procesor, ktorý môže pracovať nezávisle. 8-jadrový CPU môže súbežne vykonávať 8 rôznych úloh.
Vyrovnávacia pamäť (Cache)
Cache je malá, ale extrémne rýchla pamäť priamo v procesore. Ukladá najčastejšie používané dáta, aby ich CPU nemusel zakaždým načítavať z pomalšej RAM.
| Úroveň cache | Veľkosť | Rýchlosť |
|---|---|---|
| L1 cache | 32–256 KB | Najrýchlejšia (1–5 ns) |
| L2 cache | 256 KB – 4 MB | Rýchla (5–20 ns) |
| L3 cache | 4–32 MB | Stredne rýchla (20–50 ns) |
| RAM | 8–64 GB | Pomalšia (50–100 ns) |
Pri výbere počítača pre programovanie a multitasking je dôležitejší počet jadier. Pre jednoduché úlohy, kde závisí na rýchlosti jedného procesu, je dôležitejšia taktovacia frekvencia.
Registre
Registre sú najrýchlejšie úložné miesta v CPU — malé pamäte priamo v procesore. Ukladajú hodnoty, s ktorými CPU práve pracuje.
# Zjednodušená simulácia cyklu Fetch-Decode-Execute
program = [
("LOAD", 5), # Načítaj hodnotu 5
("ADD", 3), # Pričítaj 3
("STORE", "A"), # Ulož výsledok do A
]
akumulator = 0 # Simulácia registra CPU
pamat = {}
for instrukcia, hodnota in program:
if instrukcia == "LOAD":
akumulator = hodnota
elif instrukcia == "ADD":
akumulator += hodnota
elif instrukcia == "STORE":
pamat[hodnota] = akumulator
print(f"Inštrukcia: {instrukcia} {hodnota} | Akumulátor: {akumulator}")
print(f"Pamäť A = {pamat['A']}") # 8
Cvičné príklady
Opíš tri kroky cyklu Fetch-Decode-Execute vlastnými slovami.
Zobraziť odpoveď
Procesor má 4 jadrá s frekvenciou 3 GHz. Iný procesor má 2 jadrá s frekvenciou 4 GHz. Ktorý je lepší na úlohy, ktoré sa dajú rozdeliť na viac paralelných vlákien? Prečo?