![]() |
|
Način adresiranja mikroprocesora Intel 8086 - Verzija za štampu +- Gotovi Seminarski Diplomski Maturalni Master ili Magistarski (https://www.maturskiradovi.net/forum) +-- Forum: Obrazovanje (/Forum-obrazovanje) +--- Forum: Društvene nauke (/Forum-dru%C5%A1tvene-nauke) +---- Forum: Informatika (/Forum-informatika) +---- Tema: Način adresiranja mikroprocesora Intel 8086 (/Thread-na%C4%8Din-adresiranja-mikroprocesora-intel-8086) |
Način adresiranja mikroprocesora Intel 8086 - Vesnica - 17-06-2010 08:09 PM Maturski, seminarski i diplomski radovi iz informatike.
UVOD U MIKROPROCESOR i8086 Idejni tvorac mikroprocesora je inžinjer Marcijan Hof. Prvi mikroprocesor nastao je 1971. godine, pod nazivom Intel 4004 . Prvi predstavnici osmobitnih mikroprocesora nastali su 1974. godine, kada je Intel proizveo mikroprocesor i8080, a Motorola MC6800. Intel 1976. godine usavršava mikroprocesor i8080, a novi model nazvan je i8085. Predstavnici prve generacije šesnaestobitnih mikroprocesora su TMS9900 (1976, Texas Instrumental), i8086 (1978, Intel), MC68000 (1980, Motorola). Predstavnici druge generacije su Intelov i80286, Motorolin MC69010 i Zilogov Z8003. Nakon šesnaestobitnih pojavljuju se tridesetdvobitni mikroprocesori. 1984. godine Motorola proizvodi MC68020, a Intel i80386. Tipičan predstavnik 16-bitnih mikroprocesora prve generacije je Intelov i8086. Ovaj mikroprocesor posjeduje 16-bitnu magistralu podataka i 20-bitnu adresnu magistralu. To zanči da i8086 može da adresira 220 = 1048576 = 1Mb memorijskih lokacija. Fizički gledano iste nožice se koriste za magistralu podataka kao i za adresnu magistralu, s tim što adresa magistrala ima i 4 dodatne linije. Pošto se iste nožice koriste za prenos adresa i podataka, to znači da i8086 u jednom trenutku prenosi adrese (i tada ne može prenositi podatke) i obratno, u drugom trenutku vrši prenos samo podataka. Drugačije rečeno, ovaj mikroprocesor vrši multipleksiranje signala. i8086 je napravljen u MOS tehnologiji i ima napajanje od +5V. Potrebno vrijeme za izvrsavanje instrukcije je promjenjivo i zavisi od vrste instrukcije. Kreće se od 2 do 30 taktova, pri čemu je 1 takt oko 125 ns. ARHITEKTURA MIKROPROCESORA i8086 Mikroprocesor i8086 sastoji se od dvije jedinice: izvršna jedinica i jedinica interfejsa magistrale. Ove dvije jedinice operišu asinhrono. Cjelokupna komunikacija sa perifernim jedinicama i osnovnom memorijom odvija se preko jedinice interfejsa magistrale. Izvršna jedinica sastoji se od opštih registara i aritmetičko – logičke jedinice, dok jedinicu interfejsa magistrale čine segmentni registri, unutrašnji komunikacioni registri i skup bajtova koji služe za uvođenje instrukcija. Sve ove komponente povezane su unutrašnjim magistralama širine od 16 do 20 bita. Mikroprocesor i8086 ima četrnaest 16-bitnih registara, i to dvanaest registara za podatke i adrese, jedan pokazivač instrukcija i statusni registar. Registri adresa i podataka su podjeljeni u tri skupa sa po 4 registra: segmentni registri, registri podataka i pokazivački i indeksni registri. Fleg registar i IP figurišu izdvojeni jer svaki od njih ima specifični zadatak.. Registri opšte namjene uglavnom služe za vršenje aritmetičkih i logičkih operacija. Registri opšte namene razlikuju se od ostalih po tome što se mogu adresirati ili kao četiri 16-bitna, ili osam 8-bitnih registara. Registri opšte namjene su AX (akumulator), BX (bazni registar), CX (registar-brojač), DX (registar podataka). Pokazivački i bazni registri se koriste za rad sa adresama. Da bi se pristupilo podacima u segmentu podataka, adresa segmenta se čuva u registru segmenta podataka, a dodatak u jednom od registara: BP (pokazivač baze), SI (izvorni indeks), DI (indeks odredišta). Prilikom rada sa stekom, adresa stek-segmenta je u stek-segment registru, a odgovarajući poddatak u SP (pokazivač steka) registru. Pokazivač instrukcije IP je 16-bitni i sadrži adresu naredne instrukcije. Ova adresa je relativna adresa u odnosu na početak segmenta koda. Fleg registar sastoji se od ćelija. Ako je sadržaj ćelije 1, zastavica je je podignuta, a ako je sadržaj 0, zastavica je spuštena. Segmentacija Povećana integracija i poboljšanje perfomansi mikroprocesora nameću potrebu za korišćenjem većeg memorijskog prostora. U vezi s tim pojavljuju se problem adresiranja. Kod mnogih mikroprocesora primjenjuje se tzv. linijsko rešenje u kojem se do memorijske lokacije dolazi navođenjem jednog broja. Kod mikroprocesora i8086 za formiranje memorijske adrese potrebna su dva broja: broj segmenta ii dodatak. Razlog je podjela memorije po segmentima. Jedan segment je veličine 64 K. Mikroprocesor i8086 može u isto vrijeme da radi sa 4 segmenta od kojih svaki ima unaprijed propisanu ulogu.To su: CS – kodni segment, koji služi za zapis instrukcija programa, registar CS ukazuje na tekući segment sa instrukcijama. DS – segment podataka, namijenjen podacima sa kojima se operiše, registar DS ukazuje na tekući segment sa podacima. SS – stek-segment, koji se koristi prilikom rada sa stekom, registar SS ukazuje na tekući stek. ES – koji se prvenstveno koristi u radu sa azbučnim podacima, registar ES se koristi sa za dodatni prostor za podatke, ukazuje na tekući ekstra segment. Svaki od segmenata ima pridružen jedan registar, iz skupa segmentnih registara, u kojem se čuva početna adresa segmenta. Početna adresa predstavlja jedan podatak potreban za formiranje memorijske adrese. Drugi podatak, koji nazivamo dodatak, određuje koliko je memorijska lokacija u segmentu udaljena od početka segmenta. Segmenti u mogu biti potpuno disjunktni, ali mogu se i preklapati. UVOD U MIKROPROCESOR i8086...................................................................................3 ARHITEKTURA MIKROPROCESORA i8086............................................................3 Segmentacija..............................................................................................................4 FORMAT ASEMBLERSKIH INSTRUKCIJA I NAČIN ADRESIRANJA........................6 OBLICI ADRESIRANJA...............................................................................................7 ADRESIRANJE PODATAKA.......................................................................................7 Registarsko adresiranje..............................................................................................8 Neposredno adresiranje..............................................................................................8 Direktno adresiranje...................................................................................................8 Registarsko-indirektno adresiranje.............................................................................9 Bazno-relativno adresiranje......................................................................................10 Direktno-indeksno adresiranje..................................................................................11 Bazno-indeksno adresiranje......................................................................................11 Skalirano – indeksno adresiranje.............................................................................12 ADRESIRANJE INSTRUKCIJA..................................................................................12 Direktno adresiranje..................................................................................................12 Indirektno adresiranje................................................................................................12 Relativno adresiranje.................................................................................................12 ADRESIRANJE STEKA................................................................................................13 PRIMJER ASEMBLERSKOG PROGRAMA......................................................................13 |