Adresiranje-Adresni režimi
|
|
Adresni režimi (načini adresiranja) govore o tome kako se određuje
lokacija operanda.
Ove informacije se nalaze u adresnom dijelu instrukcije. Informacija na
osnovu koje se pronalazi podatak u memoriji zove se efektivna adresa
(EA). U odnosu na način određivanja efektivne adrese može se razlikovati
više adresnih režima rada procesora. Broj adresnih režima se razlikuje
od procesora do procesora.
Najčešće korišćeni adresni režimi rada:
Neposredno adresiranje (Immediate)
Direktno
Indirektno (memorijsko)
Registarsko
|
Neposredno adresiranje
|
Kod direktnog adresiranja operand je deo instrukcije,
tj. nalazi se u samoj instrukciji u adresnom polju
Npr. ADD #5
dodaje 5 sadržaju akumulatora
5 je vrednost operanda
Nema nikakvog obraćanja memoriji da bi se pribavio podatak
Brz pristup operandu
|
|
Direktno adresiranje
|
Kod direktnog adresiranja adresno polje sadrži adresu
operanda .
Adresa na osnovu koje se pronalazi podatak u memoriji zove se efektivna
adresa (EA)
EA = A (adresno polje instrukcije)
npr. ADD A
dodaj sadržaj memorijske lokacije sa adrese A akumulatoru
Jedno obraćanje memoriji je potrebno da bi se pribavio operand. Ovdje
nisu potrebna nikakva dodatna izračunavanja da bi se odredila efektivna
adresa.
Ograničena je veličina adresnog prostora brojem bitova koji se koristi u
adresnom polju
npr ako se koristi 5 bitova za adresu operanda, onda se može adresirati
samo 25 =32 memorijskih lokacija.
|
|
Indirektno adresiranje
|
Kod indirektnog adresiranja adresni deo instrukcije
ukazuje na adresu memorijske lokacije u kojoj se nalazi adresa operanda:
EA = (A)
npr. ADD (A)
zagrade uvek označavaju indirekciju
Veliki adresni prostor
2n gde je n = širini reči (npr 32 bita)
Potrebna su dva pristupa memoriji da bi se pribavio operand. indirektno
adrsiranje je sporije od direktnog.
|
|
Registarsko adresiranje
|
Kod registarskog adresiranja operand se nalazi u
registru čije ime se nalazi u adresnom dijelu instrukcije
EA = R
Na raspolaganju je relativno mali broj registara opšte namjene. Potreban
je mali broj bitova u adresnom polju
kraće instrukcije, brže izvršenje.
Brži pristup operandima (nema obraćanja memoriji) s obzirom na
ograničeni broj registara opšte namjene.
|
|
Pomenimo i da postoje složeniji tipovi adresiranja:
Registarsko indirektno
Sa pomerajem
·
bazno
·
indeksno
·
PC-relativno
Sa autoinkrementiranjem/dekrementiranjem
|
Izbor načina adresiranja bitno određuje brzinu izvršenja
programa. |