Frenkelove vezbe za Parkinsonovu bolestFull description
Vezbe Za Trbusnjake!!!
Teorija betonskih konstrukcija 2Full description
srpski jezik, vezbe
Matematika I kontrolne vezbe
vezbe
testovi iz srpskog jezikaFull description
android aplikacije i kako ih napraviti. Rad u aplikaciji android studioFull description
Full description
zadaci
Tehnologija gajenja vinove loze
Primer treceg kolokvijumaFull description
Mikroprocesor 8086
Definisanje pinova
Karakteristike mikroprocesora 8086
• 16-bit Arithmetic Logic Unit • 16-bit data bus (8088 has 8-bit data bus • !0-bit address bus - ! !0 " 1#0$8#%&6 " 1 meg Adresa u'auje na bajt u memoriji) *od 8088 bajtovi se predaju 8-bitnoj magistra+i podata'a) *od 8086 bajtovi sa parnih adresa idu na ni,u po+ovinu magistra+e podata'a (bitovi 0-& a bajtovi sa neparnih adresa idu na viu po+ovinu magistra+e podata'a (bitovi 8-1%) .+o' dijagram mi'roprocesora 8086
0
/egistri jedinice a poveivanje na magistra+u (.U i registri ivrne jedinice (U
*a'o se odreuje odreuje memorijs'a memorijs'a adresa# adresa# 'od sistema sistema asnovan asnovanog og na mi'roproce mi'roprocesoru soru 8086# instru'ci instru'cije je Mov [3000h],AL a'o je D4"1000h) -"o.or memorijska adresa Registar gistar AL AL
DS*10 DS* 10h+ h+DISP DI SP 10000h+3000h
memorijska lokacija memori orijska adresa 13000h
+a"atak (
2drediti vrednost fii7'e adrese ivornog operanda a s+ede9u instru'ciju MOV
U'aati# odgovaraju9im primerom# 'a'o se u programu na asemb+ers'om jei'u mi'roprocesora 8086 definiu segmenti magacina# podata'a i '?da) -"o.or
pored toga to je mogu9e napisati program na asemb+ers'om jei'u 'oji 'oristi samo jedan segment# uobi7ajeno je da se program program sastoji od najmanje tri segmenta3 segment segment magacina# segment podata'a i 'odni 'odni segment) Dire'tive @4BC@ i ECD4E 'oje u'auju na po7eta' i 'raj segmenta imaju s+ede9i format3 FopcijeG H is'ai 'oji pripadaju segmentu
labela SEGMENT labela ENDS
=
me labela 'oje se na+ai ispred dire'tiva 4BC i CD4 je identi7no i jedinstveno) Io+je FopcijeG daje va,nu informaciju asemb+eru 'oja se odnosi na organiaciju segmenta# a+i nije obaveno) Asemb+ers'o jei7'i is'ai grupisani su u segmente sa ci+jem da se preponaju od strane asemb+era a shodno tome i od JIU-a) 4egmentom magacin definie se memorijs'i prostor a magacin# segmentom podata'a definiu se podaci 'oji 9e program da 'oristi# a '?dni segment sadr,i (7ine ga instru'cije na asemb+ers'om jei'u) Kedan jednostavan program na asemb+ers'om jei'u pri'aan je na Slici 2.18) H forma programa na asemb+ers'om jei'u procesora 8086 STESEG STESEG
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ODSEG SEGMENT GL)$OG $O A H po7etna ta7'a programa ASS#ME S-ODSEG, DS-DATASEG, SS-STESEG MOV A., DATASEG Hnapuni adresu segmenta podata'a MOV DS, A. H dode+i vrednost D4-u MOV AL, $OD1 H dobavi prvi operand H dobavi drugi operand MOV !L, $OD2 ADD AL, !L H saberi operande MOV S#MA, AL H smesti reu+tat u +o'aciju 4UBA MOV AH, 4h H postavi se a INT 21h H povrata' u D24 GL)$OG END$ ODSEG ENDS H i+ana ta7'a programa END GL/$OG Slika 2.18 : Jednostavan program na asemblerskom jeziku
4egment magacina sadr,i +iniju ED. 6$ DUI (E) 2vom dire'tivom reervie se memorijs'i prostor obima 6$-bajta a potrebe magacina) U segmentu podata'a definisane su tri stav'e3 I2D1# I2D!# i 4UBA# sva'a obima bajt) Irva dire'tiva u '?dnom segmentu na'on 4BC dire'tive je dire'tiva I/2J) Irocedura predstav+ja grupu instru'cija 'oja je namenjena da obavi specifi7nu fun'ciju) Irogram sa Slike 2.18 sastoji se od jedne procedure# a+i uobi7ajeno po ne'o+i'o ma+ih procedura# u sutini# 7ine program stru'tuiranijim) 4va'oj proceduri se dode+juje ime) Dire'tive I/2J i CDI mora da imaju istu ona'u (+abe+u) I/2J dire'tiva mo,e da ima opciju CA/ i ;A/) D24 ahteva da u+ana ta7'a 'orisni7'og programa bude procedura tipa ;A/) 2dmah na'on dire'tive I/2J s+edi dire'tiva A44UB) 2va dire'tiva u'auje asemb+eru 'oji 9e od segmenata definisanih dire'tivama 4BC biti 'ori9eni) 2bi7no D24 dode+juje ta7ne vrednosti segmentnim registrima J4 i 44# do' se vrednost registra D4 (i 4 a'o se 'oristi mora inicija+iirati od strane programa 'a'o je to pri'aano na s+) !)18) Madnje dve instru'cije jegra programa su MOV INT
AH,4h 21h
Camena ovih instru'cija je da vrate uprav+janje radom JIU-a operativnom sistemu# u 'on'retnom s+u7aju D24-u)
$
Madnje tri +inije u'auju na 'raj procedure# '?dnog segmenta i g+avnog programa respe'tivno) reba uo7iti da +abe+a 'oja prethodi CDI (LNI/2 mora biti identi7na sa +abe+om 'oja prethodi dire'tivi I/2J# a isti a'+ju7a' va,i i a CD4 i 4BC (prethodi im ista +abe+a *2D4) Iseudo-instru'cijom CD avrava se ceo program i u'auje D24-u da je po7etnoj-ta7'i-programa 'raj) tog ra+oga +abe+e a po7etnu-ta7'u-programa i CD moraju biti identi7ne) +a"atak
4+ede9i program napisan na asemb+ers'om jei'u mi'roprocesora 8086 ima pet grea'a) U'aati 'oje su to) STESEG STE)SEG DATASEG $OD1 DATASEG ODSEG GL)$OG
$OETA ODSEG
SEGMENT D! ENDS SEGMENT D! & END SEGMENT $O A MOV MOV MOV ADD MOV END$ ENDS END
Dati 'rata' opis sredstava 'oji se 'oriste od strane programera na asemb+ers'om jei'u) -"o.or
4redstva 'oja programeri na asemb+ers'om jei'u 'oriste su3 (1 e"itor - 'oristi se a ediciju ivornog '?da (! asem)$er - omogu9ava programeru da od programa napisanih na asemb+ers'om jei'u generie programe na mains'om jei'u) Irevodi is'ae asemb+ers'og jei'a u binarne e'viva+ente) %
(= $i!ker - poveuje posebno asemb+irane modu+e u jedinstveni modu+ 'oji je pogodan a punjenje i ivrenje ($ $oa"er - puni ivrive binarne '?dove u memoriju i transformie ne'e +ogi7'e adrese u odgovaraju9e fii7'e) (% "e)#er - omogu9ava programeru da nadg+eda ('ontro+ie deta+je 'oji se odnose na ivrenje programa (6 ra2.o3!i sistem - ce+ina hardvera i softvera 'oja se 'oristi da podr,i ravoj novih sistema +a"atak 6
ri 'ora'a u procesu 'reiranja ivrivih programa na asemb+ers'om jei'u mi'roprocesora 8086 pri'aana su na Slici 2.19) Iopuniti podacima osta+e poicije i u'aati na 'ara'teristi'e faj+ova sa e'stenijom ) asm, .obj, .crf, .map i .ee) Korak 1. Program za editovanje 2. Asembliranje programa 3. Linkovanje programa
&$a2
tastatura mojfaj+)asm mojfaj+)obj
Proram
I2$a2
BA4B LC*
mojfaj+)asm mojfaj+)obj mojfaj+)ee
Slika 2.19 : !oraci u procesu kreiranja izvr"ivi# programa
Capomena3 U rafiranoj ob+asti na+ae se odgovori Oiue+ne preentacije efe'ata 'ora'a na Slici 2.19 pri'aani su na Slici 2.2$. EasmE faj+ (ivorni faj+ 'reira se od strane te'st procesora i+i +inijs'og editora) BA4B asemb+er 'onvertuje .asm faj+ove (instru'cije na asemb+ers'om jei'u u E) objE faj+ove (faj+ na mains'om jei'u pored 'reiranja obje'tnog programa BA4B 'reira i E) lst E faj+ (+isting faj+) E)lst E faj+ je opcioni i veoma 'oristan programeru jer on +ista sve op'?d i ofset adrese 'ao i sve gre'e 'oje dete'tuje BA4B) BA4B generie i jedan opcioni faj+ 'oji ima e'steniju E) crf E) 2n obebedjuje a+fabets'u +istu svih simbo+a i +abe+a 'oje se 'oriste u programu 'ao i broj +inije u programu 'ada im se vri obra9anje) 'ada u programu postoji ve9i broj '?dnih segmenata i segmenata a podat'e postoji i potreba da se sana gde se sva'i od tih segmenata +ocira i 'o+i'i je obim u bajtovima sva'i od njih) 2vu informaciju pru,a faj+ se e'stenijom )map) ;aj+ sa e'stenijom ) map je opcioni i daje ime sva'og segmenta# gde sva'i segment po7inje# gde avrava i 'o+i'i je njegov obim u bajtovima) faj+ sa e'stenijom .ee je ivrivi Capomena3 Iostoje dve asemb+ers'e dire'tive 'oje se 'oriste da u7ine faj+ sa e'stenijom .lst 7it+jivijim# a to su IA i L) ;ormat IA dire'tive je IA F+inijeG#F'o+oneG ova dire'tiva u'auje tampa7u 'a'o treba da se 'uca te'st) Ca primer IA &0#5! na7i da 9e se na jednoj stranici 'ucati &! +inije# a u sva'oj +iniji po 5! na'a) e'st na'on pseudo instru'cije L unosi programer i on na jedan b+i,i na7in treba da opie (asocira 'oja je namena programa i a ta se 'oristi)
Slika 2.2$ !oraci u generisanju izvr"ivi# programa
+a"atak 4
2bjasniti ra+i'e imedju pojmova potpuna definicija segmenata (fu++ segment definition i pojednostavljena definicija segmenata (simp+ified segment definition 'ada se govori o programiranju na asemb+ers'om jei'u mi'roprocesora 8086) -"o.or
Irocesor 8086 uobi7ajeno (u najve9em broju s+u7ajeva 'oristi 7etiri segmentna registra3 %S ('?dni segment# &S (segment podata'a# SS (segment magacina i 'S (e'stra segment) 4va'a +inija u programu na asemb+ers'om jei'u mora da pripada (odgovara jednom od ovih segmenata) Madnjih godina novi metod segmenata je uveden (podr,avan od strane Bicrosoft-ov ()S( *.$ i navie# .or+and-ova +)S( verzija 1 pa navie# i od strane drugih 'ompatibi+nih asemb+era) 2vaj metod se ove format sa pojednostav+jenom definicijom# a njegova stutina se sastoji u tome to 'oristi tri jednostavne dire'tive3 E) %&' E# E) &)+)E i E)S+)%! E# 'oje odgovaraju registrima %S # &S i SS # respe'tivno) *oriste9i ove dire'tive 'ori9enje dire'tiva S'-('+ i '&S 7ini nepotrebnim) U sutini pojednostav+jena definicija segmenata je +a'a a raumevanje i 'ori9enje# posebno a po7etni'e) Ire nego to se 'oristi pojednostav+jena definicija segmenata neophodno je iabrati memorijs'i mode+ a program 'oji se 'reira) Ug+avnom se 'oriste s+ede9i memorijs'i mode+i3 S()// mode+ - jedan od naj7e9e 'ori9enih mode+a# 'oji 'oristi 6$'. memorija a program i 6$'. a podat'e ('&00( mode+ - podaci moraju se smestiti u 6$'.# a program mo,e biti ve9i od 6$'.) %()%+ mode+ - suprotan je mode+u BDUB# tj) program se mora smestiti u 6$'.# a podaci u prostor ve9i od 6$'.) /)3-' mode+ - 'ombinovanjem prethodna dva mode+a dobija se LA/ mode+# tj) i '?d i podat'e mogu biti ve9i od 6$'.) Kedinstvena stru'tura podata'a 'ao to je po+je (ve'tor# matrica#))) ne sme da premai 6$'.) 4-' mode+ - program i podaci mogu da premae 6$'. a ta'odje i jedinstvena stru'tura podata'a mo,e biti ve9a od 6$'.) Iostoji ta'odje# jo jedan mode+ navan +05 ) 2vaj mode+ se 'oristi sa %( faj+ovima 'od 'ojih u'upna memorija program p+us podaci ne sme da premai 6$'.) +05 mode+ se ne mo,e 'oristiti u s'+opu pojednostav+jene definicije segmenata) Ca Slici. 2.22 i+ustracije radi a jedan isti program pri'aana je uporedna preentacija potpune i pojednostav+jene definicije segmenata)
H potpuna definicija segmenata &
H pojednostav+jena definicija segmenata
H --------- segment magacina ---SMAG
MODEL STA
SEGMENT D! "4 D#$ %&' ENDS
SMAG
H --------- segment podata'a ----S$OD $OD)1 $OD)2 E6 S$OD