Che cosa è un registro di stato?

Il registro di stato - noto anche come registro bandiera, parola di stato del programma, e il registro codice di condizione - è definito come un collettivo di bit di identificazione all'interno di un processore. Un registro è un circuito elaboratore ed è molto simile a una locazione di memoria, cioè dati potrebbe essere scritta e letta da esso. A differenza di una locazione di memoria, il registro di stato spesso non dispone di un indirizzo, perché il microprocessore usa internamente. In un'unità di elaborazione centrale (CPU) che è 8-bit, un bit del registro di stato può essere pari al numero 1 o eliminato, pari al numero 0, i risultati assortiti funzionamento del processore. Il processore a volte imposta o cancella i bit si, ma altre volte, una particolare istruzione programma imposta o azzera i bit.

Bit del registro di stato sono chiamati anche bandiere, o bit di bandiera, e sono utilizzati dal programmatore per determinati scopi di programmazione. Ogni bandiera in un registro di stato ha uno scopo unico. I set carry flag se una precedente operazione reso il settimo bit - o bandiera negativo - troppo pieno, o fatto il carry flag underflow. Imposta durante i turni di logica, di confronto, e l'aritmetica. Zero bandiera imposta se il più recente risultato dell'operazione era 0.

Una bandiera chiamato "interruzione disable" opera per consentire o meno l'operazione di interrupt, che sono le istruzioni che fermano temporaneamente alcune operazioni in modo altre operazioni possono essere eseguite. Quando questo particolare set di bandiera, gli interrupt non sono autorizzati ad operare, ma quando è chiaro, gli interrupt sono ammessi. Un'altra bandiera chiamato la bandiera decimale consente al processore di seguire una modalità binaria più avanzate per eseguire equazioni aritmetiche impeccabile. Quando il set di bandiera, si utilizza questa modalità binaria avanzata. Un altro bit di registro è il bit bandiera rottura, che definisce quando viene eseguito il (BRK) Comando Forza Interrupt.

Un flag di overflow imposta durante le operazioni di aritmetica se un'operazione produce un risultato non valido. I set bandiera negativi se il risultato della più recente dell'operazione aveva impostato a 1. Un ultimo bandiera, chiamato bit 5, è senza nome e sempre impostato a 1. I programmatori hanno sostanzialmente inutile per questo particolare bit.

I FLAGS registro è un esempio di un registro di stato che è stato utilizzato in alcune unità di elaborazione centrale e conteneva stati attuali di un processore. E 'stato a 16 bit ed è stato sostituito da EFLAGS e RFLAGS, un registro a 32-bit e il registro a 64-bit, rispettivamente. I FLAGS registro, tuttavia, hanno avuto alcune bandiere che erano differenti dal registro 8-bit originale, compreso la bandiera di parità, bandiera ausiliari, e la bandiera trappola.