8085 Modalità di indirizzamento e interruzioni

Parliamo ora delle modalità di indirizzamento nel microprocessore 8085.

Modalità di indirizzamento nell'8085

Queste sono le istruzioni utilizzate per trasferire i dati da un registro a un altro registro, dalla memoria al registro, e dal registro alla memoria senza alcuna alterazione del contenuto. Le modalità di indirizzamento in 8085 sono classificate in 5 gruppi:

Modalità di indirizzamento immediato

In questa modalità, i dati a 8/16 bit sono specificati nell'istruzione stessa come uno dei suoi operandi. For example: MVI K, 20F: significa che 20F viene copiato nel registro K.

Registra la modalità di indirizzamento

In questa modalità, i dati vengono copiati da un registro all'altro. For example: MOV K, B: significa che i dati nel registro B vengono copiati nel registro K.

Modalità di indirizzamento diretto

In questa modalità, i dati vengono copiati direttamente dall'indirizzo specificato nel registro. For example: LDB 5000K: significa che i dati all'indirizzo 5000K vengono copiati nel registro B.

Modalità di indirizzamento indiretto

In questa modalità, i dati vengono trasferiti da un registro all'altro utilizzando l'indirizzo puntato dal registro. For example: MOV K, B: significa che i dati vengono trasferiti dall'indirizzo di memoria puntato dal registro al registro K.

Modalità di indirizzamento implicito

Questa modalità non richiede alcun operando; i dati sono specificati dal codice operativo stesso.For example: CMP.

Si interrompe nell'8085

Gli interrupt sono i segnali generati dai dispositivi esterni per richiedere al microprocessore di eseguire un'attività. Ci sono 5 segnali di interrupt, cioè TRAP, RST 7.5, RST 6.5, RST 5.5 e INTR.

Gli interrupt sono classificati nei seguenti gruppi in base al loro parametro:

  • Vector interrupt - In questo tipo di interrupt, l'indirizzo dell'interrupt è noto al processore. For example: RST7.5, RST6.5, RST5.5, TRAP.

  • Non-Vector interrupt - In questo tipo di interrupt, l'indirizzo di interrupt non è noto al processore, quindi l'indirizzo di interrupt deve essere inviato esternamente dal dispositivo per eseguire gli interrupt. For example: INTR.

  • Maskable interrupt - In questo tipo di interrupt, possiamo disabilitare l'interrupt scrivendo alcune istruzioni nel programma. For example: RST7.5, RST6.5, RST5.5.

  • Non-Maskable interrupt - In questo tipo di interrupt, non possiamo disabilitare l'interrupt scrivendo alcune istruzioni nel programma. For example: TRAPPOLA.

  • Software interrupt- In questo tipo di interrupt, il programmatore deve aggiungere le istruzioni nel programma per eseguire l'interrupt. Ci sono 8 interrupt software nell'8085, cioè RST0, RST1, RST2, RST3, RST4, RST5, RST6 e RST7.

  • Hardware interrupt - Ci sono 5 pin di interrupt nell'8085 usati come interrupt hardware, cioè TRAP, RST7.5, RST6.5, RST5.5, INTA.

Note- NTA non è un interrupt, viene utilizzato dal microprocessore per l'invio del riconoscimento. TRAP ha la priorità più alta, quindi RST7.5 e così via.

Interrupt Service Routine (ISR)

Un piccolo programma o una routine che, una volta eseguita, serve la corrispondente sorgente di interruzione è chiamata ISR.

TRAPPOLA

È un interrupt non mascherabile, con la massima priorità tra tutti gli interrupt. Per impostazione predefinita, è abilitato fino a quando non viene riconosciuto. In caso di guasto, viene eseguito come ISR e invia i dati alla memoria di backup. Questo interrupt trasferisce il controllo alla posizione 0024H.

RST7.5

È un interrupt mascherabile, con la seconda priorità più alta tra tutti gli interrupt. Quando viene eseguito questo interrupt, il processore salva il contenuto del registro del PC nello stack e si dirama all'indirizzo 003CH.

RST 6.5

È un interrupt mascherabile, con la terza priorità più alta tra tutti gli interrupt. Quando viene eseguito questo interrupt, il processore salva il contenuto del registro del PC nello stack e si dirama all'indirizzo 0034H.

RST 5.5

È un'interruzione mascherabile. Quando viene eseguito questo interrupt, il processore salva il contenuto del registro del PC nello stack e si dirama all'indirizzo 002CH.

INTR

È un interrupt mascherabile, con la priorità più bassa tra tutti gli interrupt. Può essere disabilitato resettando il microprocessore.

quando INTR signal goes high, possono verificarsi i seguenti eventi:

  • Il microprocessore controlla lo stato del segnale INTR durante l'esecuzione di ogni istruzione.

  • Quando il segnale INTR è alto, il microprocessore completa la sua istruzione corrente e invia il segnale di riconoscimento interrupt basso attivo.

  • Quando le istruzioni vengono ricevute, il microprocessore salva l'indirizzo dell'istruzione successiva nello stack ed esegue l'istruzione ricevuta.