Osnovne karakteristike -...
Transcript of Osnovne karakteristike -...
Nedostatci govornih jezika
Neke rečenice računaru ne znače ništa
Neke stvari se podrazumijevaju
Česta je dvosmislenost
Šta je programski jezik?
Programski jezik je sredstvo komuniciranja izmeĎu korisnika (programera) i računara.
Ti jezici su napravljeni tako da omogućavaju korisniku da preda računaru odreĎene podatke i instrukcije koje imaju zadatak da tom istom računaru omoguće (narede, tj. pošalju zahtev za) izvršavanje planiranih operacija.
Postoje dve vrste programskih jezika.
To su:
jezici niskog nivoa i
jezici visokog nivoa.
Jezici niskog nivoa se dijele na mašinski jezik i niže programske jezike tzv. asemblerske jezike.
Jezici niskog nivoa
Mašinski jezik 1011000000000101
0000010000001000
0010110000000110
Asembler mov al, 5
add al, 8
sub al, 6
= 5 + 8 - 6
Mašinski jezik
Mašinski jezik je jedini jezik koji računar može da razumije. Za njegovo korišćenje nije potreban nikakav program prevodilac, jer se njegove instrukcije izvršavaju direktno.
Ovaj jezik je takoĎe poznat pod imenom mašinski kod i njegova sintaksa se sastoji od jedinica (1) i nula (0).
Kada se niz ovakvih instrukcija preda računaru on ih prepoznaje i konvertuje u električne signale potrebne za njegov rad. Prednost korišćenja ovog jezika je velika brzina rada računara, zbog toga što nije potrebno bilo kakvo prevoĎenje.
Asemblersi jezik
Ovaj jezik je prvi korak ka poboljšanju strukture programiranja. Koristi se zbog toga što je računar u mogućnosti da manipuliše brojevima i slovima. Neke kombinacije slova mogu da zamene odreĎene instrukcije u mašinskom kodu.
Skup ovakvih simbola i brojeva naziva se "Asemblersi jezik" i za njegovo korišćenje potreban je program koji će ga prevesti na mašinski jezik. Ovaj program prevodilac zove se "Asembler".
Svrstava se u drugu generaciju programskih jezika.
Asemblerski i mašinski jezik zahtijevaju dobro poznavanje računarskog hardvera, dok su jezici visokog nivoa u tom pogledu jednostavniji.
Za korišćenje jezika visokog nivoa potrebno je poznavanje engleskog jezika i logike problema nezavisno od tipa računara koji se koristi.
Jezici višeg nivoa za realizaciju programske konstrukcije koriste riječi engleskog jezika i matematičke simbole kao što su +, -, %, / itd.
Jezici višeg nivoa
Proceduralni jezici
(problemski orijentisani)
Objektno orijentisani jezici
Neproceduralni jezici
(deklarativni ili opisni jezici)
Proceduralni jezici
BASIC (Beginner’s All-purpose Symbolic Instruction Code)
COBOL
FORTRAN (FORmula TRANslation)
Pascal – za edukativnu namjenu
C – pogodan za pisanje OS-a
Basic je programski jezik namijenjen početnicima.
PASCAL je bio zamišljen prvenstveno kao jezik za edukativnu namjenu i učenje programiranja, jer podstiče pisanje jasnih, preciznih i čitljivih programa.
FORTRAN je programski jezik za naučno-tehničke proračune.
COBOL služi za poslovne aplikacije.
Programski jezik C se koristi izmeĎu ostalog i za razvoj sistemskog softvera.
Neproceduralni jezici
UPITNI JEZICI:
SQL (Structured Query Language)
FUNKCIONALNI JEZICI:
LISP (List Processing Language)
PROLOG (Programing in Logic)
ML
PrevoĎenje jezika
Računar "razumije" samo mašinski jezik, i zbog toga je potrebno programe napisane u drugim programskim jezicima prevesti u mašinski jezik, kako bi se mogli izvršavati na računaru.
Program prevodilac je specijalani program koji vrši prevoĎenje izvornog programa (napisanog u višem programskom jeziku) u mašinski jezik.
Programi prevodioci
Kompajler
Interpretator– “simultano” prevoĎenje
Hibridni prevodioci (Java)
Kompajlirani programi izvršavaju se brže nego interpretirani programi.
MeĎutim, neki od programskih jezika nisu pogodni za kompajliranje, nego samo za interpretiranje.
Kompajler prevodi cjelokupan program napisan u višem programskom jeziku u mašinski jezik. Taj dobiveni program u mašinskom jeziku se poslije može izvršavati zasebno neovisno o izvornom programu.
(FORTRAN, Pascal, C)