Jeziki procesori asembleri kompajleri i interpretatori Vladimir Filipovi
Jezički procesori (asembleri, kompajleri i interpretatori) Vladimir Filipović vladaf@matf. bg. ac. rs
vladaf@matf. bg. ac. rs 2/7 Prevođenje sa viših programskih jezika l Elektronski računari mogu da izvršavaju jedino programe izražene na mašinskom jeziku. Izvršni program je u tom slučaju zapisan preko binarne azbuke {0, 1}. l Ako je program zapisan na nekom jeziku koji je drugačiji od mašinskog, mora se izvršiti prevođenje na mašinski jezik. l Prevođenje na mašinski jezik obavljaju specijalni programi. l Prevođenje sa mašinski-orijentisanih jezika na mašinski jezik obavljaju asembleri. l Prevođenje sa viših programskih jezika na mašinski jezik obavljaju kompajleri i interpretatori.
vladaf@matf. bg. ac. rs 3/7 Asembliranje l Prevođenje sa mašinski-orijentisanih jezika na mašinski jezik obavljaju asembleri, a sam proces se naziva asembliranje. l Da bi program na mašinskom jeziku postao izvršan, mora biti povezan (linkovan) i smešten na odgovarajuće mesto u memoriji. To obavljaju programi povezivači (linkeri) i punioci.
vladaf@matf. bg. ac. rs Prevođenje sa viših programskih jezika Postoje dva principa koji se koriste pri prevođenju izvornih programa sa viših programskih jezika na mašinski jezik: l kompilacija l interpretacija Ako su proces prevođenja i proces izvršavanja vremenski razdvojeni, vrši se kompajliranje (kompilacija) programa. Program koji to realizuje naziva se kompajler (prevodilac, kompilator). Ako su proces prevođenja i proces izvršavanja vremenski povezani, vrši se interpretacija programa. Program koji to realizuje naziva se interpretator. 4/7
vladaf@matf. bg. ac. rs Interpretacija i kompilacija 5/7
vladaf@matf. bg. ac. rs Struktura kompajlera 6/7
vladaf@matf. bg. ac. rs Struktura interpretatora 7/7
- Slides: 7