Programski jezici Po stepenu zavisnosti programskog jezika od računara programske jezike delimo na: mašinski zavisne (mašinski i simbolički jezik) mašinski.

Slides:



Advertisements
Similar presentations
Ma.
Advertisements

Click on each of us to hear our sounds.
HIRAGANA by number of strokes Images from:
ma mu mi mo me pe pi pa pu po si sa so.
Being in Bamberg allowed us to meet incredible people from Europe and the world. Studying with them opened our eyes to the many.
Programiranje kroz aplikacije
Struktura i princip rada računara
Programi zasnovani na prozorima
predavanja v.as.mr. Samir Lemeš
Operativni sistemi.
SOFTWARE SOFTVER.
Java Hello world !.
PONAVLJANJE CheckBox Koristi se za rešavanje zadataka gde je potrebno omogućiti uključivanje ili isključivanje jedne ili više opcija. Važna svojstva: –Checked.
OSNOVE PROGRAMIRANJA LEKCIJA I - ALGORITMI
Struktura i princip rada računara
Klijentske i serverske tehnologie
Programiranje - Blokovi naredbi i logički tipovi –
Teorema o 4 boje(Four color theorem)
PROGRAMIRANJE MENIJA.
The Present Perfect Continuous Tense
Programiranje Uvod Nikola Vlahović.
Upitni jezik SQL.
Microsoft Office 2007 MS Office je programski paket koji sadrži više programa: MS Word – program za obradu teksta MS Excel – program za izradu tabela sa.
Quick Basic.
Petlje FOR - NEXT.
REPEAT…UNTIL Naredbe ciklusa.
RAČUNARSKI SOFTWARE.
PROGRAMSKE PETLJE Milenković Gabrijela.
Komponente izbora i kontejnerske komponente
Uvod u HTML Zoltan Geller 2017
KREIRANJE OBJEKATA.
APLIKATIVNI SOFTVER Za razliku od sistemskog softvera čiji je osnovni zadatak usmeravanje, nadgledanje i podržavanje rada računarskog sistema, aplikativni.
Europski dan programiranja
Uvod u programiranje - matematika – X predavanje
Izrada web-stranica.
RAZGRANATA STRUKTURA Zadaci i rešenja
Reference ćelije i opsega
Razvoj Web aplikacija Ajax.
Elektrotehnički fakultet – Podgorica Operativni sistemi
14 UNUTRAŠNJE I ANONIMNE KLASE
Dragan Filipović, Predsednik Izvršnog Odbora
SOFTWARE SOFTVER.
LAPLACEOVA TRANSFORMACIJA
Arhitektura računarskog sistema
INFORMACIONE TEHNOLOGIJE U STUDIJSKOM PROGRAMU MERENJE I REGULACIJA: WEB BAZIRANI MERNO-AKVIZICIONI SISTEMI.
M-datoteke.
Page Layout Podešavanje stranica.
MessageBox.
Pojmovi digitalnog zapisa
PROGRAMSKI JEZIK PASCAL
MATEMATIČKI FAKULTET, UNIVERZITET U BEOGRADU
Lazarus okruženje TIPOVI UNIT-a
Osnovni simboli jezika Pascal
Razvojne okoline Kolegij: Programski jezik C++ Ak. god. 2017/2018
Do While ... Loop struktura
Virtualizacija poslovnih procesa metodom „Swimlane“ dijagrama
Osnovne karakteristike
Programiranje – Small Basic
Bacanje kocke pomoću micro:bit-a
Strukture podataka i algoritmi 5. VRIJEME IZVRŠAVANJA ALGORITMA
C++ WORKSHOP Šimec Tino - FOI.
Skup instrukcija procesora
Naredbe u php-u.
Programski jezik C++ - Vježbe - 5. dio
Programski jezik Python
7. Baze podataka Postavke MS Accessa.
Ponavljanje Pisana provjera
Programiranje - Naredbe za kontrolu toka programa – 1. dio
INTERPOLACIJA PO DIJELOVIMA POLINOMIMA
Kako zaštititi privatnost na facebooku
Presentation transcript:

Programski jezici Po stepenu zavisnosti programskog jezika od računara programske jezike delimo na: mašinski zavisne (mašinski i simbolički jezik) mašinski nezavisne (jezici višeg nivoa)

- Mašinski zavisni jezici - Mašinski jezici Izgrađeni su nad binarnom azbukom (0,1) Nije potrebno prevođenje Vezan je za konkretan računar (svaka familija procesora ima svoj mašinski jezik)

- Mašinski zavisni jezici - Simbolički jezici Uvode mnemotehničke skraćenice za operacije i simboličke oznake podataka Jednoj naredbi mašinskog jezika odgovara jedna naredba simboličkog

Program koji prevodi simbolički u mašinski jezik zove se asembler. Za programiranje u mašinski zavisnim jezicima potrebno je dobro poznavanje načina rada i arhitekture određenog računara.

Program koji prevodi simbolički u mašinski jezik zove se asembler. Obično se koriste za programiranje računara za interakciju računara sa I/O uređajima : štampačima skenerima uređajima za čuvanje podataka,... Njime su pisani programi poznati kao drajveri.

- Jezici višeg nivoa - Bliži su prirodnom jeziku, čitljiviji i lakši za pisanje programa. Imaju visok stepen nezavisnosti od arhitekture računara

- Jezici višeg nivoa - Bliži su prirodnom jeziku, čitljiviji i lakši za pisanje programa. Imaju visok stepen nezavisnosti od arhitekture računara Na osnovu načina prevođenja i izvršavanja dele se na : Kompajlerske (Algol, Fortran, Cobol, PL/I,...) Interpreterske (Lisp, Prolog, Basic,...)

U početku se razlikovala primena u: Oblasti poslovanja – karakterisao je veliki broj I/O podataka i relativno jednostavan opis obrade podataka (Cobol) Nauci i tehnici – karakterisao je mali broj I/O podataka, ali veoma složen opis obrade, pa su razvijani jezici za tu namenu (Fortran, Algol...) Vremenom se gubi ova podela i savremeni programski jezici mogu se koristiti ravnopravno u ovim oblastima.

PREMA NAČINU REŠAVANJA PROBLEMA Proceduralne – dajemo računaru kompletan skup instrukcija kojim se rešava problem, tj. dajemo mu algoritam za rešavanje zadatka (pa se zovu i algoritamski). Tu spadaju: Pascal, Cobol, C, Basic, Fortran, mašinski,... Deklarativne – opisujemo šta znamo o problemu i šta želimo da dobijemo rešavajući ga, a sistem (interpreter) sam dolazi do postupka za rešavanje problema. Primeri deklarativnih jezika su Prolog i SQL.

Na osnovu načina alokacije memorije: Programske jezike sa statičkom alokacijom memorije (C++, C#, Java, Pascal,...). Programske jezike sa dinamičkom alokacijom memorije (Ruby, Lisp, JavaScript i Python).

Najčešća podela programskih jezika (sa rejtingom za februar 2013 Najčešća podela programskih jezika (sa rejtingom za februar 2013. godine): Objektno orijentisani jezici (60.1%) Proceduralni jezici (35.0%) Funkcijski jezici (3.3%) Logički jezici (1.6%)

U funkcijskom programiranju funkcije se primenjuju na argumente i vrednosti. Vraćene vrednosti se koriste kao argumenti za druge funkcije sa izbegavanjem pripisivanja naredbi. Primer je Lisp kod koga je primarna struktura sa kojom radi lista.

Proceduralni jezici su se menjali i razvijali tokom vremena. Fortran i Cobol spadaju u prve jezike višeg nivoa. Oko 1960. god došlo je do velike softverske krize jer je naredba GO TO dovela do toga da se programi teško prate i imaju previše grešaka.

Proceduralni jezici su se menjali i razvijali tokom vremena. Dolazi do razvoja strukturiranih programskih jezika (Algol, Pascal,...) i “zabrane” korišćenja naredbe GO TO. Sledeća faza je razvijanje modularnih programskih jezika koji funkcionišu tako što razbijaju program na manje celine (module) gde svaki modul obavlja određenu funkciju.

Objektno orijentisani jezici su jezici poslednje generacije. Objekti su jedinice informacija koje sadrže podatke kao i metode za procesiranje i rad sa podacima. Da bismo koristili gotov objekat ne moramo da znamo kako je on pravljen niti šta je u njemu, već samo kako i šta on radi. U OO jezike se ubrajaju : Java, C++, Python...

Logički programski jezici Pripadaju klasi deklarativnih (neproceduralnih) programskih jezika. Zasnovani su na predikatima (logičkim izrazima). Logički jezici: Prolog (PROgramming in LOGic) Datalog

Razvoj programskih jezika je veoma brz. Posebno je uslovljen razvojem hardvera i komunikacija. Sve navedene podele nisu striktne, jer razvojem neki programski jezik može da preuzme dobra rešenja iz drugih jezika, a koja su se pokazala korisnim.

www.tiobe.com TIOBE index

www.tiobe.com TIOBE index

www.tiobe.com TIOBE index

www.tiobe.com TIOBE index