1. Allmänna register
Dessa register används för att lagra data som bearbetas av CPU:n. De kan användas för att lagra alla typer av data, inklusive instruktioner, data och adresser.
2. Specialregister
Dessa register används för att lagra specifika typer av data. Till exempel lagrar programräknarregistret adressen för nästa instruktion som ska exekveras, och stackpekarregistret lagrar adressen till toppen av stacken.
3. Flyttalsregister
Dessa register används för att lagra flyttalsnummer. Flyttal är tal som kan ha en bråkdel, till exempel 3,14159.
4. Vektorregister
Dessa register används för att lagra vektorer. Vektorer är matriser av data, till exempel en lista med nummer eller en lista med instruktioner.
5. Kontrollregister
Dessa register används för att styra processorns funktion. Till exempel lagrar statusregistret CPU:ns status och kontrollregistret lagrar styrinställningarna för CPU:n.
6. In-/utgångsregister
Dessa register används för att överföra data mellan CPU:n och omvärlden. Till exempel lagrar ingångsregistret data som har tagits emot från en extern enhet, och utmatningsregistret lagrar data som ska skickas till en extern enhet.