Koji su načini adresiranja 8086?
Mikroprocesor 8086 podržava širok izbor načina adresiranja, što mu omogućuje pristup podacima i memorijskim lokacijama na fleksibilan način. Ovi načini adresiranja određuju kako se efektivna adresa operanda izračunava na temelju danih informacija u instrukciji. 8086 nudi nekoliko načina adresiranja, svaki sa svojim jedinstvenim karakteristikama:
1. Registrirajte način adresiranja:
- Ovaj način adresiranja koristi jedan od registara opće namjene (AX, BX, CX, DX) za određivanje operanda.
- Operand se nalazi izravno u navedenom registru.
2. Način trenutnog adresiranja:
- Operand je uključen izravno unutar same instrukcije.
- Ovaj način je koristan za učitavanje konstantne vrijednosti ili podataka u registar.
3. Način izravnog adresiranja:
- Operand se nalazi na memorijskoj lokaciji čija je adresa eksplicitno navedena u instrukciji.
- Efektivna adresa određena je dostavljenom 16-bitnom adresom.
4. Registrirajte neizravni način adresiranja:
- U ovom načinu rada, operand se nalazi na memorijskoj lokaciji na koju ukazuje sadržaj registra opće namjene.
- Navedeni registar sadrži adresu memorijske lokacije.
5. Način neizravnog adresiranja na temelju registra:
- Slično neizravnom adresiranju registra, ali dodaje osnovni registar (BP ili BX) vrijednosti pomaka pohranjenoj u registru opće namjene.
- Efektivna adresa izračunava se dodavanjem sadržaja baznog registra pomaku.
6. Način indeksiranog adresiranja:
- Koristi kombinaciju osnovnog registra (BP ili BX) i indeksnog registra (SI ili DI) za izračunavanje efektivne adrese.
- Indeksni registar se skalira za 1, 2, 4 ili 8, ovisno o navedenom atributu veličine, i dodaje se vrijednosti osnovnog registra.
7. Način indeksiranog adresiranja na temelju:
- Kombinira neizravno adresiranje temeljeno na registru s indeksiranim adresiranjem.
- Efektivna adresa izračunava se zbrajanjem sadržaja osnovnog registra (BP ili BX), skaliranog indeksnog registra (SI ili DI) i vrijednosti pomaka.
8. Način adresiranja niza:
- Posebno dizajniran za operacije niza, ovaj način adresiranja koristi DS registar kao osnovni registar i SI ili DI registar kao indeksni registar.
- Obično se koristi za operacije prijenosa podataka iz memorije u memoriju.
9. Način relativnog adresiranja:
- Koristi se za skokove i grananja, gdje operand specificira relativnu udaljenost od trenutne instrukcije.
- Efektivna adresa izračunava se dodavanjem vrijednosti relativnog pomaka trenutnom programskom brojaču (PC).
10. Implicitni način adresiranja:
- U ovom načinu rada, operand je impliciran ili inherentan samoj instrukciji.
- Nije specificirana eksplicitna adresa jer instrukcija radi na implicitnim operandima.
Ovi načini adresiranja omogućuju mikroprocesoru 8086 fleksibilnost pristupa i rukovanja podacima s različitih memorijskih lokacija i registara. Odabir načina adresiranja ovisi o specifičnoj instrukciji, vrsti podataka kojima se pristupa i programerovim ciljevima optimizacije.