Home
Accesso / Registrazione
 di 

Corso di programmazione per microcontrollori Zilog Z8. Quarta puntata - 4

microcontrollori Zilog Z8

I modi di indirizzamento supportati dai micro Z8 vengono denominati: - Indirizzamento registro in cui l’operando è il contenuto di un registro. Esempio: “LD R4,23” significa carica nel registro di lavoro R4 il contenuto del registro 23. - Indirizzamento indiretto tramite registri. In questo caso il registro non contiene direttamente il dato ma l’indirizzo del registro il cui contenuto verrà utilizzato dall’istruzione.

Esempio: “LD R3,@R4” significa carica nel registro R3 il contenuto del registro il cui indirizzo è contenuto nel registro R4. - Indirizzamento immediato dove l’operando è già specificato nell’istruzione. Esempio: “LD R3,#10” significa carica nel registro R3 il numero 10. - Indirizzamento indicizzato in cui viene specificato un registro che contiene un offset da aggiungere per ottenere l’indirizzo dell’operando. - Indirizzamento diretto, in questo caso viene specificato l’indirizzo della prossima istruzione da eseguire.

- Indirizzamento relativo in cui viene specificato lo spostamento dalla posizione dell’istruzione in corso per eseguire quella successiva.

zilog_z8_indirizzamento_relativo

I REGISTRI DELLO Z8

Abbiamo finora parlato di registri, vediamo ora più in dettaglio come questi registri sono organizzati nella struttura dello Z8. L’area di memoria denominata Register File (file registri) risulta composta da 256 locazioni (byte) di cui solo 144 sono effettivamente utilizzabili. Le locazioni utilizzabili possono venire così suddivise: - 4 registri (da 00 a 03) corrispondono alle 4 porte di Input/Output; - 124 registri (da 04 a 7F) sono registri di uso generale; - 16 registri (da F0 a FF) sono registri di controllo. Tutti i registri possono essere gestiti nello stesso modo indipendentemente dal fatto che siano registri di uso generale o di controllo.

I registri possono inoltre essere gestiti in coppia, ovvero due registri contigui vengono trattati come se costituissero un unico registro a 16 bit. Occorre solo ricordare che la parte più “pesante” dei 16 bit viene caricata nel registro con numero pari, mentre la parte meno “pesante” dei 16 bit viene caricata nel registro caratterizzato dal numero dispari immediatamente successivo. Quindi, i 144 registri singoli possono anche essere trattati come 72 coppie di registri. Le coppie di registri vengono gestite mediante una particolare notazione. Ad esempio, con la sigla RR4 ci si riferisce ai registri R4 ed R5 trattati come coppia di registri.

Non è invece possibile scrivere RR5 poiché, ricordiamo, una coppia di registri è sempre formata da un registro pari e dal registro dispari immediatamente successivo. Esistono due diverse possibilità di indirizzamento per lavorare con le coppie di registri. La prima consiste nello specificare direttamente l’indirizzo del registro come indicato nel seguente esempio: LD 32,58 Questa istruzione provoca il caricamento nel registro di indirizzo 32 del contenuto del registro di indirizzo 58. Come si può notare scrivere un numero senza riportare alcuna indicazione significa indirizzare direttamente un registro.

Per specificare che si tratta di un numero e non di un registro occorre utilizzare il simbolo “#”. Ad esempio l’istruzione: LD 32, #58 coincide con il caricamento nel registro di indirizzo 32 del numero 58. Esiste poi un secondo modo per rivolgersi ai registri utilizzando la definizione di registri di lavoro (working register). Per comprendere chiaramente questo concetto dobbiamo suddividere l’area di memoria composta dai 144 byte riservati ai registri in nove aree costituite ciascuna da 16 registri.

Il kit è disponibile da Futura Elettronica

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 5 utenti e 38 visitatori collegati.

Ultimi Commenti