La gestione delle interruzioni

La gestione delle interruzioni sarà demandata ad una procedura software (nel nostro esempio nel linguaggio che e' realizzato sopra Mic-1). La presenza di richieste di interruzioni può essere "sentita" dalla nostra CPU poiché supponiamo che l'hardware della macchina fa si che al termine di un ciclo di clock il bit 15 del CSR del device i (0<=i<=7) venga copiato nel bit (15-i) del registro OPC (in particolare, nel nostro esempio, il bit 15 del CSR della tastiera viene copiato nel bit 0 di OPC, il bit 15 del CSR della stampante viene copiato nel bit 1 di OPC).OPC è uno dei registri della macchina Mic-1 che in questo caso supponiamo non abbia altro utilizzo.
L'hardware copia IP in OPC
Per far si che la macchina possa lavorare ad interruzioni disabilitate (cioè non sempre le richieste di interruzione debbano esser "sentite" dalla CPU), utilizzeremo il bit 0 del registro OPC per indicare ciò, e praticamente OPC[0]=0 abilitiamo le interruzioni e OPC[0]=1 le disabilitiamo.
OPC[0] abilita/disabilita le interruzioni
E' compito del microinterprete accorgersi della presenza di richieste di interruzione.

<---- Introduzione Rilevamento interruzioni e chiamata gestore ---->