Centrální procesorové jednotky mají dvě primární součásti: řídicí jednotku, která reguluje činnost procesoru, a aritmetickou logickou jednotku, která skutečně drtí čísla a porovnává hodnoty. Tyto dva klastry tranzistorů se však stále spoléhají na paměťové zdroje v počítači, který CPU napájí, aby fungovaly.
Paměť
I když to není striktně součást CPU, procesorové jednotky jsou k ničemu bez paměti, která ukládá data a programových instrukcí, které mají provádět. To zahrnuje trvalé úložiště pevných disků a sekundárních úložných zařízení a také dočasnou paměť, kterou má váš počítač v paměti RAM. CPU mají jen velmi malé množství paměti pro velmi dočasné úložiště a nemohou pracovat bez samostatných paměťových prostředků.
Řídící jednotka
Řídicí jednotka, jak název napovídá, je obvod, který vydává příkazy jiným hardwarovým komponentám k provádění programů. Řídicí jednotka ve skutečnosti neprovádí žádný kód sám; spíše pouze řídí provádění programových instrukcí načítáním instrukcí z paměti, analýzou těchto instrukcí podle potřeby a následným naplánováním příslušných hardwarových komponent tak, aby na tyto instrukce působily. Tímto způsobem řídicí jednotka řídí činnost celého počítače.
Aritmetická logická jednotka
ALU je součást CPU, která provádí skutečné výpočty procesoru. Jeho obvody počítají rovnice sčítání, odčítání, násobení a dělení v pokynech, které jí řídicí jednotka předává. ALU také provádí logické operace: proces určování, zda je jedna hodnota stejná s druhou, je-li jedna hodnota menší než druhá nebo je-li jedna hodnota větší než druhá. Tyto logické operace jsou nezbytné pro řídicí struktury, které regulují tok softwaru.
Registry
Registry jsou malé množství paměti, které je ve skutečnosti součástí hardwaru CPU, které poskytuje data CPU mnohem rychleji, než by trvalo, než by procesor načetl data z externích zdrojů paměti, ale jsou pouze pro bitové informace, které procesor potřebuje ruku v daném okamžiku. To může zahrnovat výsledky operací komponent ALU, dokud je řídicí jednotka neuloží někde jinde, nebo to může zahrnovat adresy paměti v paměti RAM nebo pevném disku, které obsahují datové instrukce programu nebo hodnoty proměnných.