Prevođenje programa -asembliranje i kompajliranje-

Program napisan u asemblerskom kodu mora se prije izvršavanja pomoću posebnog programa – asemblera prevesti u mašinski kod.
Programe napisane u višim programsim jezicima (Pascal, C, Java) moramo pomoću posebnih programa prevodilaca prevesti u asemblerski kod.

Prevođenje programa potrebno je uvijek onda kada program želimo izvršavati na nekom drugom mikroprocesoru.

Primjer prevođenja jedne instrukcije zapisane u programskom jeziku Pascal u asemblerski kod. 

Instrukcija vrši operaciju sabiranja vrijednosti varijabli A i B i zapis zbira u varijabli Z.



Instrukcija se prvo prevodi u asemblerski kod, gdje se umjesto varijabli A, B i Z zapisuju memorijske lokacije gdje se vrijednosti varijabli pamte.




Prevođenjem asemblerskog koda u mašinski kod dobiva se niz instrukcija koje sadrže samo nule i jedinice.

Viši programski jezici su stvoreni tek kada je korist od mogućnosti upotrebe softvera na više vrsta procesora postala veća od troškova pisanja kompajlera. Ograničene memorijske mogućnosti prvih računara su bile tehnička prepreka kod primjene kompajlera.

Softver pisan za prve računare je dugo vremena pisan u asemblerskom jeziku (niži simbolički jezik namijenjen programiranju računara i prilagođen arhitekturi centralnog procesora. Tako ranije dat pojam asembler možemo uopštiti i shvatiti kao pomoćni program koji prevodi neki asemblerski jezik u mašinski jezik datog računara (npr. AMD-ovog procesora u Intelov ili obrnuto).
Kompajler (prevodilac, programski prevodilac, eng. compiler) je računarski program koji čita program napisan u izvornom (obično višem) jeziku, te ga prevodi u mašinski jezik.

 

Rješavanje problema START

copyright M2M
BL-2011/14