De werking van een processor


Een processor werkt alleen maar in nullen en enen (binaire code). Het enige wat die kan is getallen optellen, maar hij kan dit wel heel snel achter elkaar. Als die getallen wil aftrekken telt die eigenlijk heel snel negatieve getallen, als die wil vermenigvuldigen telt die gewoon heel veel op.

Voor een simpele optelling moet de processor heel wat doen. Een processor kan alleen met machinetaal (nullen en enen) werken.

Een programmeur kan in een programmeertaal een opdracht voor een optelling schrijven, bijvoorbeeld C=A+B. Er zijn speciale programma's die zo'n opdracht in machinetaal vertalen. Zo'n programma heet een compiler.

De processor werkt met eenvoudige instructies zoals LAAD, SLA OP, OPTELLEN, AFTREKKEN en VERMENIGVULDIGEN. Elke instructie of een bewerking heeft een code in nullen en enen. De processor kan daardoor zien wat zie moet doen.

Voor de optelling C=A+B is in een serie instructies nodig:

Instructie 1 Laad de waarde van adres A in het interne geheugen in Rekenregister 1
Instructie 2 Laad de waarde van adres B in het interne geheugen in Rekenregister 2
Instructie 3 Tel de waarde van Rekenregister 1 bij Rekenregister 2 en plaats deze waarde in Rekenregister 3
Instructie 4 Sla de waarde van Rekenregister 3 op in adres C van het interne geheugen

Instructiecyclus

Een ander belangrijk register is de Program Counter. Instructies staan in het geheugen en de program counter geeft aan waar de huidige instructie staat. Na het uitvoeren wordt de Program Counter verhoogd, zodat de volgende instructie opgehaald kan worden.

Als de computer iets moet uitreken, worden de instructies een voor een in het instructieregister geladen, gedecodeerd en uitgevoerd. Bij elke instructie doorloopt de processor de volgende cyclus:

  1. Haal de instructie op van het register en zet deze in het instructieregister.
  2. Decodeer de instructie.
  3. Voer de instructie uit.
  4. Verhoog de Program Counter.

Deze cyclus heet de instructiecyclus. De besturingseenheid bestuurt de instructiecyclus en zorgt dat de stappen goed doorlopen worden.

Bron: Informatica-actief

Valid HTML 4.01 Transitional

Valide CSS!