Processorer "lagrar" inte direkt "data på samma sätt som en hårddisk eller RAM gör. De * bearbetar * data med hjälp av interna strukturer som innehåller data tillfälligt under beräkningar. Den faktiska lagringen sker i minne (RAM) eller lagringsenheter (hårddiskar, SSD:er, etc.). Processorn interagerar med dessa externa lagringsplatser för att hämta och skicka data.
Här är en uppdelning av hur en processor hanterar data:
* Register: Dessa är små, extremt snabba lagringsplatser * inuti * själva processorn. De har de uppgifter som för närvarande behandlas. Register är avgörande för hastighet eftersom åtkomst till dem är mycket snabbare än att komma åt RAM. Antalet och typer av register varierar beroende på processorarkitekturen (t.ex. x86, arm). Varje register har vanligtvis en enda data (ett ord, en byte etc.).
* cache: Detta är en hierarki av litet, snabbt minne beläget på eller mycket nära processorn. Det fungerar som en buffert mellan processorn och huvudminnet (RAM). Ofta har data kopieras till cachen för att påskynda åtkomsten. Det finns flera nivåer av cache (L1, L2, L3), där L1 är den snabbaste och minsta och L3 är den långsammaste och största.
* minne (RAM): Processorn hämtar instruktioner och data från RAM. RAM är betydligt långsammare än cache och register, men det har mycket större mängder data.
Datarepresentation:
Oavsett var data lagras (register, cache, RAM), representeras de i binär form - sekvenser av 0s och 1s. Processorn tolkar dessa binära sekvenser enligt datatypen (heltal, flytande punktnummer, karaktär, instruktion etc.).
kort sagt: Processorn lagrar inte * data på lång sikt; Det manipulerar data tillfälligt i sina register och cache, drar data från och skickar resultat till RAM och andra lagringsenheter. Den faktiska långsiktiga lagringen sker någon annanstans.