In de computerarchitectuur is een instructieregister (ook afgekort tot IR) dat deel van een besturingseenheid van een centrale verwerkingseenheid (CPU) waarin de instructie opgeslagen is die op enig moment uitgevoerd of gedecodeerd wordt. 

In eenvoudige processors wordt elke instructie die moet worden uitgevoerd, eerst in het instructieregister geladen, alvorens de instructie kan worden gedecodeerd, voorbereid en uiteindelijk kan worden uitgevoerd. Dit proces kan meerdere stappen in beslag nemen. Sommige van de gecompliceerde processors maken van een pijplijn van instructieregisters gebruik, waar elke fase van deze pijplijn een deel van de decodering en de voorbereiding voor zijn rekening neemt, alvorens de instructie door te geven aan de volgende fase. Moderne processors kunnen zelfs een aantal van deze stappen buiten de vastgestelde volgorde uitvoeren, aangezien het decoderen van verschillende instructies tegenwoordig ook parallel kan worden uitgevoerd.

Het decoderen van de opcode in het instructieregister omvat het bepalen van de instructie, het bepalen waar haar operanden in het geheugen staan, het ophalen van deze operanden uit het geheugen, het alloceren van  processormiddelen om de opdracht uit te voeren, etcetera.

De output van een instructieregister staat ter beschikking van de stuurschakelingen (controlecircuits) die de timingsignalen  genereren die de verschillende verwerkingselementen controleren die betrokken zijn bij het uitvoeren van de instructie. 

In de instructiecyclus wordt de instructie in het instructieregister geladen nadat de processor de instructie heeft opgehaald van de geheugenplaats waarnaar door de programmateller wordt verwezen.

Voetnoten

Computergeheugen