15
Načela programiranja u asemblerskom jeziku

Načela programiranja u asemblerskom jeziku

  • Upload
    keefer

  • View
    42

  • Download
    0

Embed Size (px)

DESCRIPTION

Načela programiranja u asemblerskom jeziku. Svaki procesor ima svoj vlastiti skup instrukcija koji razumije. Instrukcija se sastoji od : -operacijskog koda (koji kaže koju operaciju treba izvršiti) - PowerPoint PPT Presentation

Citation preview

Page 1: Načela programiranja u asemblerskom jeziku

Načela programiranja u asemblerskom jeziku

Page 2: Načela programiranja u asemblerskom jeziku

• Svaki procesor ima svoj vlastiti skup instrukcija koji razumije. Instrukcija se sastoji od :

-operacijskog koda (koji kaže koju operaciju treba izvršiti)

-polje načina adresiranja i adresnog dijela (koji kaže gdje se nalaze

operandi i gdje smjestiti rezulat)

Page 3: Načela programiranja u asemblerskom jeziku

• Operacijski kod dobiva svoju slovčanu kraticu koja podsjeća na djelovanje instrukcije a adrese operanada i rezultata dobivaju svoja simbolička imena.

• Tako su najčešći mnemonici za ar. log. instrukcije:

Page 4: Načela programiranja u asemblerskom jeziku

• ADD zbrojiti (od englekog add — zbrojiti);• SUB oduzeti (od engleskog subtract —

oduzeti);• MUL pomnožiti (od engleskog multiply —

pomnožiti)• DIV podijeliti (od engleskog divide —

podijeliti)

• DEC smanjiti za jedan (od engleskog decrement — smanjiti)

• INC povećati za jedna (od engleskog inerement — povećati)

Page 5: Načela programiranja u asemblerskom jeziku

• S obzirom da je vrlo često potrebno premještati podatke iz pojedinih registara procesora u spremnik i obrnuto ili jednog registra u drugi, često se koristi instrukcija za premještanje s mnemonikomMOV premjestiti (od engleskog move — pomaknuti).

Page 6: Načela programiranja u asemblerskom jeziku

Uz taj mnemonik uvijek se moraju napisati dvije adrese:1. adresa ishodišta, tj. adresa odakle dolazi podatak, koju pišemo kao <src>,2.adresa odredišta, tj. adresa kamo se podatak premješta, koju pišemo kao <dest>

• Tako se općenito piše:MOV <dest> <src> (premjesti sadržaj sa druge adrese na prvu)

Page 7: Načela programiranja u asemblerskom jeziku

• Program napisan u asembleru prevodi se u strojni jezik i to radi program već ugrađen u asembler.

• Programiranje u asembleru je i dalje teško pa su nastali viši programski jezici gdje više naredbi asemblera je zamijenjeno jednom naredbom višeg programskog jezika pa su ti programi kraći i razumljiviji.

• Međutim i njih treba prevesti u strojni oblik prije izvođenja. To rade posebni programi za prevođenje- kompajleri.

Page 8: Načela programiranja u asemblerskom jeziku

• Primjer 1.

ADD X,Y znači zbroji X+Y i rezultat spremi u x

• Primjer 2.

• Treba izračunati izraz X+Y/Z i rezultat staviti u A. X, Y I Z su neke varijable spremljene na adresama čiji su mnemonički simboli X, Y I Z.

Page 9: Načela programiranja u asemblerskom jeziku

MOV A,Y -stavljamo u ak. A varijablu Y

DIV A,Z -dijelimo sadržaj A sa Z, rez.u A tj.(A)(A/Z)

ADD A,X -zbrajamo sadržaj ak. sa X

Page 10: Načela programiranja u asemblerskom jeziku

• Primjer 3. Izračunati X+(Y*Z-V/W). Rezultat spremiti na neku adresu C.

Page 11: Načela programiranja u asemblerskom jeziku

MOV A,V

DIV A / W

MOV C,A

MOV A,Y

MUL A,Z

SUB A,C

ADD A,X

MOV C,A

Page 12: Načela programiranja u asemblerskom jeziku

• Instrukcije ponekad mogu biti jednoadresne. Tada se jedan operand stavlja u akumulator. Pri tome se operacija obavlja između sadržaja akumulatora i drugog operanda a rezultat ponovo ide u akumulator. Pri tome koristimo naredbu za stavljanje podatka u akumulator LOAD a za spremanje sadr. ak. na neku drugu adresu STORE.

Page 13: Načela programiranja u asemblerskom jeziku

• Primjer:

1.X+Y/Z

2. C=X+(Y*Z-V/W)

Page 14: Načela programiranja u asemblerskom jeziku

1.

LOAD Y

DIV Z

ADD X

STORE C

Page 15: Načela programiranja u asemblerskom jeziku

• 2.

LOAD V

DIV W

STORE C

LOAD Y

MUL Z

SUB C

ADD X

STORE C