Program "kopieras" inte direkt i CPU på det sätt du kanske tänker på att kopiera en fil från en mapp till en annan. Istället involverar processen flera steg:
1. Ladda programmet i minnet: När du kör ett program är operativsystemet (OS) ansvarigt för att ladda det från sin lagringsplats (hårddisk, SSD, etc.) i datorns slumpmässiga åtkomstminne (RAM). RAM är en typ av flyktigt minne som är direkt tillgängligt för CPU. Denna lastningsprocess innebär att du läser programmets instruktioner och data från lagringsenheten och skriver dem till specifika RAM -adresser.
2. Hämta Instruktioner: CPU innehåller en komponent som kallas instruktionspekaren (IP) eller programräknare (PC) . Detta register håller reda på minnesadressen för nästa instruktion som ska köras. CPU hämtar instruktionen på minnesadressen som pekas på av IP/PC.
3. Avkodningsinstruktioner: När den har hämtats avkodas instruktionen av CPU:s styrenhet. Detta handlar om att bryta ner instruktionen i sina komponentdelar (opkod och operander) för att förstå vilken operation som måste utföras.
4. Utför instruktioner: Baserat på den avkodade instruktionen utför CPU:s aritmetiska logikenhet (ALU) och andra komponenter nödvändiga operationer. Detta kan involvera beräkningar, datamanipulation, minnesåtkomst eller styrning av input/utgångsenheter.
5. Uppdatering av instruktionspekaren: Efter att ha kört en instruktion ökas IP/PC för att peka på nästa instruktion i programmets sekvens. Denna process upprepas tills programmet avslutas.
kort sagt: Programmet är inte ett enda block som kopieras till CPU. Istället hämtas enskilda instruktioner från RAM (där programmet är bosatt efter laddning) en åt gången, körs, och sedan hämtas nästa instruktion. CPU interagerar bara direkt med RAM; Lagringsenheten (hårddisk, etc.) är endast involverad i den första belastningsfasen. CPU:s register har de data som behandlas och instruktionspekaren leder exekveringsflödet.