Wanneer we kijken naar de verwerking die door een computer wordt uitgevoerd, gebeuren er een aantal belangrijke dingen:
1. Ophalen: De computer haalt instructies uit het geheugen. De locatie van de volgende instructie wordt doorgaans opgeslagen in een programmateller (PC).
2. Decoderen: De opgehaalde instructie wordt geïnterpreteerd. De besturingseenheid van de CPU ontcijfert de opcode van de instructie (de uit te voeren bewerking) en operanden (de gegevens waarop de bewerking zal inwerken). Dit omvat het identificeren van het type bewerking (rekenkundig, logisch, geheugentoegang, enz.) en het lokaliseren van de betrokken gegevens.
3. Uitvoeren: De rekenkundige logische eenheid (ALU) van de CPU voert de instructie uit. Dit kan het uitvoeren van berekeningen, logische vergelijkingen, gegevensverplaatsing of andere bewerkingen inhouden.
4. Opslaan: Het resultaat van de uitvoering wordt teruggeschreven naar het geheugen of een register. Hiermee wordt de systeemstatus bijgewerkt op basis van het effect van de instructie.
5. Herhaal: De programmateller wordt (meestal) verhoogd en de hele cyclus herhaalt zich met de volgende instructie. Deze cyclus van ophalen, decoderen, uitvoeren en opslaan (vaak afgekort tot F-D-E-S of iets dergelijks) gaat door totdat het programma wordt beëindigd of een onderbreking tegenkomt.
Voorbij de basiscyclus:
* Geheugenbeheer: De CPU werkt samen met het geheugen en beheert de toegang tot gegevens en instructies. Dit omvat het omgaan met virtueel geheugen, caching en mogelijk interactie met verschillende geheugencontrollers.
* Invoer/uitvoer (I/O): De CPU communiceert met randapparatuur (toetsenbord, muis, schijfstations, netwerkinterfaces, enz.) via invoer-/uitvoerbewerkingen, waarbij vaak interrupts nodig zijn om asynchrone gebeurtenissen af te handelen.
* Onderbreekt: Externe gebeurtenissen of uitzonderingen (bijvoorbeeld delen door nul) kunnen de normale uitvoeringsstroom onderbreken, waardoor de CPU de gebeurtenis afhandelt voordat het programma wordt hervat.
* Parallelle verwerking: Moderne CPU's maken vaak gebruik van technieken als pipelining, multi-core processing en SIMD (Single Instruction, Multiple Data) om meerdere instructies gelijktijdig uit te voeren, waardoor de prestaties aanzienlijk toenemen.
* Besturingssysteeminteractie: De CPU werkt nauw samen met het besturingssysteem (OS), dat bronnen beheert, processen plant en services aan applicaties levert.
In wezen omvat de verwerking van een computer een continue lus van het ophalen van instructies, het ontcijferen ervan, het uitvoeren van de bijbehorende bewerkingen en het opslaan van de resultaten. De complexiteit komt voort uit het samenspel van deze basisstappen met geheugenbeheer, I/O-bewerkingen, interruptafhandeling en parallelle verwerkingstechnieken. |