FDE-cykeln eller
hämtningsdekode-exekutcykeln , är den grundläggande processen genom vilken en CPU (central bearbetningsenhet) utför instruktioner. Det är en kontinuerlig slinga som upprepar tills CPU är avstängd eller stöter på en stoppinstruktion. Här är en uppdelning av varje steg:
* hämta: CPU hämtar nästa instruktion från minnet. Platsen för nästa instruktion lagras vanligtvis i ett register som heter Program Counter (PC). PC:n ökas efter varje hämtning för att peka på nästa instruktion i sekvens.
* avkoda: Den hämtade instruktionen avkodas. Detta handlar om att översätta instruktionens binära kod till en uppsättning signaler som CPU kan förstå och agera på. Avkodaren identifierar operationen som ska utföras (t.ex. tillägg, subtraktion, minnesåtkomst) och operanderna (de data som operationen kommer att använda). Detta steg kan innebära att bestämma vilka register eller minnesplatser som är involverade.
* execute: CPU utför den avkodade instruktionen. Detta kan innebära att man utför en aritmetisk operation, flyttar data mellan register eller minne eller kontrollerar exekveringsflödet (t.ex. förgrening till en annan del av programmet). Resultatet av exekveringen kan lagras på ett register eller minnesplats.
i enklare termer: Föreställ dig ett recept (programmet). FDE -cykeln är som en kock som följer receptet:
* hämta: Kocken läser nästa steg i receptet.
* avkoda: Kocken förstår vad steget betyder (t.ex. "blanda mjöl och socker").
* execute: Kocken utför steget (blandar faktiskt mjöl och socker).
Viktiga överväganden:
* Instruktionsset Architecture (ISA): Specifikationerna för FDE -cykeln varierar beroende på CPU:s ISA. Olika ISA:er har olika instruktionsformat och sätt att kodas för instruktioner.
* pipelining: Modern CPU:er använder pipelining, som överlappar FDE -stadierna för flera instruktioner. Detta ökar den övergripande instruktionens genomströmning avsevärt. Medan konceptet med hämtningsdekode-exekut förblir centralt, är exekveringen inte strikt sekventiell.
* avbrott: FDE -cykeln kan avbrytas av externa händelser (som tangentbordsinmatning eller en timersignal), vilket gör att CPU tillfälligt avbryter sin nuvarande instruktion och hanterar avbrottet.
FDE -cykeln är den kärnmekanism som alla datorprogram körs. Att förstå dess grundläggande struktur är avgörande för att ta tag i hur CPU:er fungerar på en låg nivå.