Mašinski jezik

  • 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% &registri

    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