Upload
gorana
View
263
Download
1
Embed Size (px)
Citation preview
7/25/2019 Mainski jezik
1/25
JelenaRistoviNataa Ili
STUDENTI:MENTOR:
Prof. drMiloradBanjanin!.".#$ #Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
2/25
Nastaje sa ra%voje& ra'(nara i)redstavlja sredstvo*a&(ni*a+ije i%&e,( 'ovje*a i
ra'(nara
Pro-ra&s*i je%i*
Deni+ija: /jeta'*i je%i* %ai%rad( )ro-ra&a 0softvera12sastavljen od si&3ola *ojera'(nar &o4e da )revede (dire*tne radnje
Sl(4i %a i%rad( )ro-ra&a *ojitre3a da for&ali%(je odre,eneal-orit&e s +ilje& rjeavanja
)ro3le&a (% )odr*( ra'(nara
Mora da %adovoljidva osnovna
%a5tjeva:
#. Da je ra%(&ljiv%a 'ovje*a
".Da i&a&o-(nost)revo,enja (o3li* ra%(&ijivra'(nar(
!.".#$ "Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
3/25
6enera+ija )ro-ra&s*i5 je%i*a
Mains*i je%i*
Si&3oli'*i &ains*i je%i+i7asa&3leri i &a*ro7asa&3leri
Ni4
i)ro-ra&
s*i
%i+i
Pro+ed(ralni je%i+i
Ne)ro+ed(ralni je%i+i2 sa(s*o s)e+ijali%ovano&na&jeno&
/ii)
ro-ra&
s*i
je%i
+i
Prva-enera+ij
a
)ro-ra&s*i5 je%i*a
Dr(-a-enera+ij
a)ro-ra&s*i5 je%i*a
Trea-enera+ij
a)ro-ra&s*i5 je%i*a
8etvrta
-enera+ija)ro-ra&s*i5 je%i*a
!.".#$ !Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
4/25
Sistre&s*i)ro-ra&i
Editori
Nivoi raunarskog sistema
9RD/ER Mi*roar5ite*t(ra;i%i'*i (re,aji
Mains*i je%i*
O)erativni siste&
7/25/2019 Mainski jezik
5/25
Programski jezik nieg nivoa2(-ra,en je ( 5ardver2 )a se)os&atra *ao 5ardvers*a*o&)onenta ili -r()a 5ardvers*i5
dijelova *oji *o&(ni+iraj( sasoftvero&
Je sistem instrukcija ipodataka *oje +entralni)ro+esor ( ra+(nar(
ne)osredno i%vrava
7/25/2019 Mainski jezik
6/25
Kod prvih raunara programeri su direktno radili
sa hardverom raunara - nije postojao operativni
sistem.
Ovi raunari pokretani su sa konzole koja se sastojala od
svjetala za prikaz, prekidaa, neke vrste ulaznog ureaja i
tampaa.
Programi u mainskom kodu uitavani su pomou ulaznog
ureaja(npr. ita kartia!
"koliko #i greka prekinula program, stanje greke
oznaavano je pomou svjetala. Programer je mogao daispita registre proesora i glavnu memoriju kako #i utvrdio
uzrok greke.
"koliko #i se program normalno izvrio na stampau #i se
pokazao izlaz.
Ovo zahtjeva dobro poznavanje nainarada i arhitekture odreenog raunara,vrlo je teko programirati na njemu.
To je uslovilo da uzak krug ljudi pie iodrava programe.Programiranje na mainskom jezikuomoguilo bi maksimalno korienje
mogunosti raunara,ali njegovabinarna orma ini mainski jezikpraktino neupotrebljivim za ovjeka.
!ainski programi su pisani samo za!ainski programi su pisani samo za
jedan, odreeni tip raunara " nisu sejedan, odreeni tip raunara " nisu se
mogli izvravati na drugim raunarima.mogli izvravati na drugim raunarima.
!egistarje poseban dioprocesora koji slui za uvanjein"ormacija koje su potrebne
procesu tokom izvravanja
programa.snovna karakteristika je da imaju
veliku brzinu # a mali kapacitet.$eliina registara se izraava u bitima.
Postoji vie vrsta registara% ®istri
podataka#adresni registri# registri opte
namjene#registri konstanti# vektorski registri...
!.".#$ $Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
7/25
rogrami napisani na
rogrami napisani na
mainskom jeziku imaju
ainskom jeziku imaju
prednosti koje nisu
rednosti koje nisu
karakteristine programimaarakteristine programima
napisanim na viem
apisanim na viem
programskom jeziku
rogramskom jeziku
Progra
miran
jemu
mains
komjezik
uprog
ramer
jeumogu
nosti
dapristu
pi
eleme
ntarnim
opera
cijama
raun
araitimeu
potpu
nosti
kontro
lieprocesob
rade
poda
taka.
Programi
Programi
napisaniumainskomjezik
ubrzo
napisaniumainskomjezi
kubrzo
seizvodejernijepotrebnanjihova
seizvodejernijepotrebnanjihova
kompilacija.
kompilacija.
Mnogiproizvoaieledasvoje
Mnogiproizvoaieledasvoje
vodeeprog
ramerazvijuna
vodeeprog
ramerazvijuna
mainskomjezikuili
asembleru
mainskomjezikuili
asembleru
kakobipostiglimaksimalnub
rzinu
kakobipostiglimaksimalnub
rzinu
njihovogizvoenja
njihovogizvoenja..
Da 3i se i%3je-le )ote*oe)isanja )ro-ra&a na
&ains*o& je%i*(2 dola%i do
ra%voja si&3oli'*i5 je%i*a.U&jesto instr(*+ija )isani5ni%o& 3itova2 (vedene s(s*raeni+e %a o)era+ije i
si&3oli'*e o%na*e
)odata*a.
!.".#$ CProf.dr Milorad Banjanin
7/25/2019 Mainski jezik
8/25
Svemainsk
einstrukcijeinji'ovi
operan
di predstavlja
junizove
binarni'ci"ara.
(kolikobip
rogramerel
iodanapie
programna
mainskom
jeziku#tada
bi
moraodakodira
programkao
nizbinarni'
ci"ara.
Nave)emo
primjer%*sp
rogramiratin
a
mainskom
jezikunared
buvieg
ramskogjezika!.".#$ @Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
9/25
Ne*a )ro-ra& )o'inje na adresi #5e*sade*adno2 a )rostor na *o&e s( s&jetene
)ro&jenljive )o'inje na adresi @# 5e*sade*adno.Ne*a s( +jelo3rojne )ro&jenljive 2 B2 i D ti&redo& s&jetene ( &e&oriji i ne*a sva*a od nji5%a(%i&a )o " 3ajta2 )ri 'e&( s( ini+ijalnevrijednosti 2 B#2 "2 D! de*adno.
Ta*o,e2 ne*a je adresi3ilna jedini+a 3ajt2 a d(4inainstr(*+ije " 3ajta )ri 'e&( )rvi )ol(3ajt %a(%i&ao)era+ioni *od2 dr(-i )ol(3ajt je o%na*a re-istra2do* je ( )reostalo& 3ajt( ()isana adresa.
Pro-ra& se sastoji od = instr(*+ije:#. Prenesi sadr4aj sa lo*a+ije @ ( o)ti re-istar #.". Po&no4i sadr4aj lo*a+ije @C sa sadr4aje& o)te-re-istra #.!. Sa3eri sadr4aj lo*a+ije @! sa sadr4aje& o)te-re-istra #.
=. Do3ijeni %3ir ()ii na lo*a+ij( @#.!.".#$ FProf.dr Milorad Banjanin
7/25/2019 Mainski jezik
10/25
I%-led ovo- )ro-ra&a (&ains*o& o3li*()ri*a%an je ( ovoj ta3eli.
7/25/2019 Mainski jezik
11/25
Pretvaranje dekadnog u binarnibro
!.".#$ ##Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
12/25
I%vjesno ola*anje %a)ro-ra&era )redstavljalaje &o-(nost *odiranja)ro-ra&a (5e*sade*adno&
05e*sade+i&alno&1(&jesto ( 3inarno&o3li*( 0)ri&jer na sli+i12ali je i dalje )ost()a* %ai%vravanje )ro-ra&aostao isti.9e*sade*adni siste& je siste& sa #$ ra%li'iti5+ifara. O3i'no se *oristi # ara)s*i5 +ifara i dodaj( se slova 7;2 odnosno a7f.9e*sade*adni 3rojni siste& je )o-odno *oristiti ( ra'(nari&a)oto je )retvaranje i%&e,( 3inarno- i 5e*sade*adno- siste&ajednostavno.Ta*o sva*a = 3ita &o-( da se na)i( *ao jedna +ifra5e*sade*adno- siste&a2 to %na'i da # 3ajt &o4e 3iti na)isan*ao dvije +ifre ( 5e*sade*adno& siste&(.!.".#$ #"Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
13/25
Pretvaranje 'eksadecimalnog broja udekadni
Odnosde*adni5 i5e*sade+i&alni5 3rojeva
O)sti o3li*
5e*sade+i&alno-3roja
!.".#$ #!Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
14/25
Naredna fa%a *oja je donijela ola*ano )isanje )ro-ra&a je3ilo (vo,enje si&3oli'*i5 o%na*a. U&jesto *odova2 o)era+ijes( se o%na'avale )o&o( &ne&oni'*i5 0si&3oli'*i51 o%na*a*ao na sli+i. Sli'ne o%na*e s( se *oristile i )ri %a)is( 3rojeva (&e&oriji. Mne&oni'*e o%na*e s( o&o-(ile )oveanje)rod(*tivnosti )ro-ra&era i ve( 'itljivost )ro-ra&a.
Pro-ra&i s( i dalje )isani ( a)sol(tni& adresa&a2 a )ose3an)ro-ra& )revodila+ je )revodio &ne&oni'*e o%na*e i nji5oveo)erande ( nji5ov 3inarni e*vivalent.Sa ra%voje& o)erativni5 siste&a
)o*a%alo se da )isanje )ro-ra&a( a)sol(tni& adresa&a )ostaje)re)re*a %a nji5ovo e*asno
i%vravanje. Pored to-a2 )ro-ra&isa a)sol(tno& adreso& nis(&o-li da is*oriste sve )o-odnosti*oje s( )r(4ali noviji &odelira'(nara 0*ao n)r. /ea&e&orija1 ta*o da je (veden novi
na'in *odiranja )ro-ra&a.!.".#$ #=Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
15/25
I dalje s( se *oristile &ne&oni'*e o%na*e 2 ali )ro-ra&inis( )isani ( a)sol(tni& ve ( relativni& adresa&a0)ri&jer sa sli*e1. Sva &jesta na *oja se )ro-ra&referie s( o%na'avana la3ela&a. Ta*o,e2 ( svi&nared3a&a ( *oji&a se referise &e&orija *oriene s(si&3oli'*e (&jesto a)sol(tni5 adresa. Ga )ro-ra&e*oji s( )isani na ova*av na'in *a4e se da s( )isani (asemblerskom jeziku. Pro-ra& *oji vri )revo,enje)ro-ra&a sa ase&3lers*o- je%i*a na &ains*i je%i*ra'(nara se na%iva asembler.Pro-ra&i naase&3lers*o& je%i*( se)revode na &ains*i
je%i* )o&o( relativni5adresa2 'esto ( odnos(na 3a%ni re-istar.Ova*vi )ro-ra&i ne&oraj( da se ()is(j( na(na)rijed odre,ene
adrese ( &e&oriji.
Pri )renos( )ro-ra&a ( &e&orij( ( referentni 0n)r.3a%ni1 re-istar ()is(je se adresa ono- dijela &e&orije( *oji je )ro-ra& ()isan. Danas se %a )ro-ra&iranje*ao ni4i )ro-ra&s*i je%i+i *oriste is*lj('ivo ase&3lers*ije%i+i. Pro-ra&iranje na ase&3ler( o&o-((je )isanjee*asniji5 i 3r4i5 0( odnos( na )ro-ra&e na vii&
)ro-ra&s*i& je%i+i&a1 *ao i )ot)(nije is*orienjera'(nars*i5 res(rsa.
Nedostata* ovo- na'ina)ro-ra&iranja jeslo4enost )ro-ra&a i
)otre3a &no-o 3olje-)o%navanja na'inaf(n*+ionisanja ra'(narane-o ( sl('aj()ro-ra&iranja na vii&)ro-ra&s*i& je%i+i&a.
!.".#$ #Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
16/25
S*() ra%li'iti5 &ains*i5 instr(*+ija *oje &o-( da se i%vravaj( naS*() ra%li'iti5 &ains*i5 instr(*+ija *oje &o-( da se i%vravaj( nane*o& )ro+esor( se na%ivane*o& )ro+esor( se na%iva skup instrukcija procesoraskup instrukcija procesora. Da 3i se. Da 3i seinstr(*+ije (s)jeno i%vrile neo)5odno je da sva*a od nji5 sadr4i sveinstr(*+ije (s)jeno i%vrile neo)5odno je da sva*a od nji5 sadr4i sveinfor&a+ije )otre3ne %a i%vravanje. Ove infor&a+ije (*lj('(j(:infor&a+ije )otre3ne %a i%vravanje. Ove infor&a+ije (*lj('(j(:
#.O)era+ioni *od#.O)era+ioni *odinstr(*+ijeinstr(*+ije2 *oji denie
o)era+ij( *oja e 3itii%vrena.
".Referen+( na".Referen+( nao)erande instr(*+ijeo)erande instr(*+ije2
3e% o3%ira da li s( ()itanj( (la%nevrijednosti ili re%(tatii%vravanjainstr(*+ije.O)erandi instr(*+ije &o-( da se nala%e ( realnojili virt(alnoj &e&oriji2 re-istri&a )ro+esora ili na)ose3ni& lo*a+ija&a ( (la%noHi%la%ni&
(re,aji&a.
!.Referen+( na!.Referen+( nanaredn( instr(*+ij(naredn( instr(*+ij(2
*oja tre3a da se(nese ( )ro+esor i%realne ili virt(alne&e&orije ili2 a*o jenjena lo*a+ija (virt(alnoj &e&oriji2
sa dis*a ili i% realne&e&orije2 (%avisnosti odlo*a+ije strani+e*ojoj )ri)ada.
Referen+a na naredn( instr(*+ij( &o4e da 3(de eksplicitna iliimplicitna.*o se naredna instr(*+ija nala%i ( )ro-ra&( od&a5 i%a instr(*+ije *ojase tren(tno i%vrava2 tada se ona i&)li+itno referie.
*o se ( te*(oj instr(*+iji %a5tjeva -rananje2 tada se ( njoj %a5tjeva ie*s li+itno navo,en e lo*a+i e na *o o se nala%i naredna instr(*+i a.
!.".#$ #$Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
17/25
rit&eti'*erit&eti'*e Na najvee& 3roj()ro+esora ova -r()a instr(*+ija se
dijeli na instr(*+ije nad +ijeli&3rojevi&a2 instr(*+ije nad
3rojevi&a ( )o*retno& %are%( iinstr(*+ije nad 3inarno *odirani&
de*adni& 3rojevi&a.U ov( -r()( s)adaj( i instr(*+ije
*oje s&anj(j( ili )oveavaj(vrijednost o)eranda %a #2 rade
nje-ov( ne-a+ij( 0( )ot)(no& iline)ot)(no& *o&)le&ent(12 itd.
o-i'*eo-i'*e I&)le&entiraj(
lo-i'*e o)era+ijeB(love al-e3re.
Instr(*+ije %a *onver%ij(Instr(*+ije %a *onver%ij(
7/25/2019 Mainski jezik
18/25
Instr(*+ije %a )renosInstr(*+ije %a )renos)odata*a)odata*a Ove
instr(*+ije se *oriste %a)renos )odata*a i%&e,(dvije lo*a+ije*oje &o-(
da )redstavljaj( ilire-istre2 vr5 ste*a ili ne*(
lo*a+ij( ( &e&oriji.
Ula%noHi%la%neUla%noHi%la%neinstr(*+ijeinstr(*+ije Ove
instr(*+ije se *oriste%a *o&(ni*a+ij( i
)renos )odata*a sa
(la%noHi%la%ni5(re,aja.
7/25/2019 Mainski jezik
19/25
OP. DEO
OP. DEO
OP. DEO
:# :" :!
:#
:
:"
adresa re%(ltataadresa dr(-o- o)eraadresa )rvo- o)erand
adresa dr(-o- o)eraadresa )rvo- o)erand
adresa jedno- o)eran!.".#$ #FProf.dr Milorad Banjanin
7/25/2019 Mainski jezik
20/25
*nstrukcija&oradasadr4isve
infor&a+ijeneo)5odne%anjenoi%vravanje.
7/25/2019 Mainski jezik
21/25
Staza podataka
Me&orijs*e
7/25/2019 Mainski jezik
22/25
!.".#$ ""Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
23/25
!.".#$ "!Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
24/25
!egistri0%a)ro&enljive1a232t#2t"22K2t!2t=2tB2t$2tC1unkcionalnejedinicezaoperacije:
)sol(tnavrednost:a23
Mini&(&oddva3roja:&in0t#2t"1
Ma*si&(&oddva3roja:&a0t#2t"12&a0t$21Po&eranje(desno:!2K#!.".#$ "=Prof.dr Milorad Banjanin
7/25/2019 Mainski jezik
25/25
!.".#$ "Prof.dr Milorad Banjanin