PROGRAMIRANJE PROGRAMIRANJE Programiranje je postupak nastanka programa za






















- Slides: 22

PROGRAMIRANJE

PROGRAMIRANJE Programiranje je postupak nastanka programa za računalo Zahtjeva vrlo dobro poznavanje rada na računala i programskog okruženja u kojem se program piše

PROGRAM • Program je skup naredbi čijim se izvršenjem obavlja željeni posao (svaka naredba se sastoji od jedne ili više linija koda • Čovjek koji piše program za računalo zove se PROGRAM IDEXMP programer INTEGER BUS_NUM = 99 WRITE(*, *) ' TAKE BUS ', BUS_NUM END

NAREDBA • Svaki se program sastoji od naredbi • Naredba (engl. command ) je temeljni element programa • To je niz ključnih riječi kojima programer „naređuje” računalu obavljanje neke željene radnje • Postoje naredbe za različite operacije: naredba pridruživanja, naredba unosa, naredba ispisa, naredba zbrajanja, itd.

TIPOVI PROGRAMSKIH JEZIKA • Strojni jezik • Viši programski jezik • Objektno orijentirani jezik • Programski jezici neovisni o sklopovlju i operacijskom sustavu

STROJNI JEZIK • Jedini jezik koji računalo razumije te se svaki drugi oblik programa mora prije izvođenja prevesti u strojni jezik • Program napisan u strojnom jeziku sastoji se od slovčanih kratica koje zamjenjuju nizove binarnih brojeva (naredbe) 100100 0101000101010

STROJNI JEZIK • PREDNOSTI: Djelotvorno iskorištenje memorije i velika brzina izvođenja napisanog programa • NEDOSTACI: Složenost postupka izrade programa i ograničenost programa na jedan tip mikroprocesora (program napisan za jedan tip mikroprocesora nije primjenjiv na drugom tipu)

STROJNI JEZIK • Prikaz strojnog jezika s pomoću slovčanih kratica naziva se još i SIMBOLIČKIM JEZIKOM ili ASEMBLEROM SIMBOLIČKI JEZIK PREVEDENO U STROJNI JEZIK (ASEMBLER) MOV AX, 5 ADD AX, BX 10111000 00000101 00000011 11000011

VIŠI PROGRAMSKI JEZICI • Viši programski jezici su svi oni koji nisu izravni prikaz binarnog oblika naredbe • Razlog uvođenja je da se strojni jezik nadomjesti lakšim i razumljivijim programskim jezikom • Veći ili manji skup naredba strojnog jezika se nadomješta jednom naredbom višeg programskog jezika

VIŠI PROGRAMSKI JEZICI 10 REM Izračunavanje opsega i površine pravokutnika 20 CLS 30 A = 12. 3 : REM Stranica A pravokutnika 40 B = 8. 2 : REM Stranica B pravokutnika 50 OPSEG = 2 * A + 2 * B : REM Formula za opseg 60 POV = A * B : REM Formula za površinu 70 PRINT OPSEG : REM Ispis opsega 80 PRINT POV : REM Ispis površine

VIŠI PROGRAMSKI JEZICI

VIŠI PROGRAMSKI JEZICI • Programer ne mora znati gotovo ništa o građi računala • Za razliku od asemblera pri prevođenju se svaka naredba višeg programskog jezika prevede u mnogo bajtova • Drugi važan razlog uvođenja viših programskih jezika je potreba da se jedan te isti program primjeni na različitim modelima računala tj. različitim mikroprocesorima

VIŠI PROGRAMSKI JEZICI • Nisu namijenjeni strogo uskom području primjene već je njima moguće rješavati relativno širok raspon zadataka • BASIC • (Beginner’s all-purpose symbolic instruction code) učenje programiranja, jednostavniji programi • Pascal • Učenje strukturnog programiranja, jednostavniji programi • C (C++) • Jezik velikih mogućnosti kojim se služe profesionalni programeri

Primjer BASIC PRINT : PRINT "English to Metric Conversion" programa INPUT "Miles: ", Miles INPUT "Yards: ", Yards INPUT "Feet: ", Feet INPUT "Inches: ", Inches = 63360 * Miles + 36 * Yards + 12 * Feet + Inches Meters# = Inches / 39. 37# Kilometers = INT(Meters# / 1000) Meters# = Meters# - 1000 * Kilometers Final. Meters = INT(Meters#) Centimeters = Meters# - Final. Meters Centimeters = 100 * Centimeters = INT((Centimeters +. 005) * 100) / 100 PRINT "Kilometers: "; Kilometers PRINT "Meters: "; Final. Meters PRINT "Centimeters: "; Centimeters END

Primjer Pascal programa program Povrsina. Kruga var povrsina, polumjer: real; begin write(‘Upisi polumjer kruga: ‘); readln(polumjer); povrsina: =polumjer*3, 14; write(‘Povrsina je: ‘, povrsina); end.

Primjer C++ programa #include <iostream. h> void main() { int a, b, c; cout << "Please enter three numbersn"; cout << "a: "; cin >> a; cout << "nb: "; cin >> b; cout "nc: "; cin >> c; } if (c=(a-b)) { cout << "a: "; cout << a; cout << " minus b: "; cout << b; cout << " equals c: "; cout << c << endl; } else cout << "a-b does not equal c: " << endl;

JEZIČNI PREVODITELJI • Program napisan u prikazu koji nije binarni naziva se IZVORNI PROGRAM (eng. source code) i prije izvođenja ga je potrebno prevesti u strojni program • Jezični prevoditelji su računalni programi koji prevode viši oblik prikaza jezika u binarni

JEZIČNI PREVODITELJI • Kompajler (engl. compiler) • Kompajler je program koji prevodi izvorni program u strojni jezik samo jednom • Prevedena inačica programa ima nastavak. exe • Prevedeni program može se izvršavati bez kompajlera • Interpreter • Prevodi svaki put kad se program izvršava i to naredbu po naredbu (prevede i izvrši, prevede i izvrši. . . ) • Omogućava trenutno otkrivanje određene vrste greške i interaktivno ispravljanje

OBJEKTNO ORIJENTIRANI PROGRAMSKI JEZICI • Razlog razvoja takvih programa je želja da se programi sastavljaju iz gotovih komponenata • Upotrebljavaju gotove dijelove programa (objekte, klase) pri gradnji složenijih programa • Postupak programiranja uz pomoć objekata naziva se objektno orjentirano programiranje • Popularni objektno orijentirani programi opće namjene: Visual Basic, Visual C++

PROGRAMSKI JEZICI NEOVISNI O SKLOPOVLJU I OPERACIJSKOM SUSTAVU • Takvi programski jezici su prenosivi • Jedan te isti program napisan u C++ može se izvoditi na 2 i više različitih računala koji rade pod različitim operacijskim sustavima • Najpoznatiji: HTML i Java

HTML Ograničenih je mogućnosti i ne spada u jezike opće namjene Specijalizirani programski jezik namijenjen izradi hipertekstovnih dokumenata Omogućuje prikaz mrežnog hipertekstovnog dokumenta na zaslonu monitora bez obzira na to o kakvoj je vrsti računala ili operacijskog sustava riječ <html> <head> <title>Naslov</title> </head> <body> <h 1> <font color="#FF 0000">Dobar dan</font> </h 1> </body> </html>

JAVA • Snažan objektno orijentirani programski jezik opće namjene • Nalikuje na C++ • Glavna značajka mu je potpuna prenosivost • Java program se uz pomoć Java kompajlera prevodi u Java Bytecodes koji je neovisan o računalu i operacijskom sustavu. To je strojni jezik za tzv. Java prividno ili virtualno računalo. Dalje se Java Bytecodes (na računalu na kojem se program izvršava) uz pomoć Interpretera prevodi u strojni jezik