programski jezici

33
PROGRAMSKA POTPORA 1 PROGRAMSKI JEZICI

Upload: kondukter

Post on 17-Dec-2015

72 views

Category:

Documents


7 download

DESCRIPTION

Primjena racunala

TRANSCRIPT

  • PROGRAMSKA POTPORA 1

    PROGRAMSKI JEZICI

  • PROGRAMSKA POTPORA 2

    Povijesni razvoj programskih jezika je

    uzrono-posljedino povezan sa razvojem elektronikih raunala.

    Uzrono-posljedino razvoj doprinio je dananjoj jednostavnosti rada sa raunalom.

    Sve "bra" raunala omoguuju izradu sve ugodnijeg (user friendly) suelja, ali hardverski zahtjevnijih programa.

    slika

  • PROGRAMSKA POTPORA 3

    Jae hardverske komponente

    ire podruje primjene i ugodnije

    suelje

    Zahtjev za ugodnijim i

    kvalitetnijim radom

    Zahtjev za

    "monijim" hardverom

  • PROGRAMSKA POTPORA 4

    Program je skup naredbi nanizanih strogo

    utvrenim redoslijedom, ijim izvravanjem se obavlja eljeni posao, odnosno program u sutini predstavlja redoslijedni niz naredbi, koje raunalo izvrava da bi obavio zadau prema zadanom postupku rjeavanja tj. po izraenom algoritmu.

    ovjek koji pie program naziva se programer, a postupak nastanka programa

    naziva se programiranje

  • PROGRAMSKA POTPORA 5

    Slijed naredbi jezinog procesora, napisan u jednom od editor-a, koje e se potom procesoru prevesti da ih moe izvriti, mora biti logian i usklaen s modelom odvijanja zadae koji se naziva algoritam.

    Algoritam predstavlja logiki niz radnji koje treba izvriti da se od poetnih postavki doe do eljenog rezultata, a izrauje se povezivanjem logikih struktura koje se prikazuju grafikim oblicima, najee prema ANSI standardu

  • PROGRAMSKA POTPORA 6

    Algoritam zadae sloen od logikih struktura prikazanih grafikim oblicima naziva se DIJAGRAM TOKA ili BLOK DIJAGRAM i

    predstavlja grafiko rjeenje programske zadae. Na osnovu dijagrama toka pie se niz naredbi jezinog procesora.

    Dijagram toka se sastoji iz unaprijed

    dogovorenih znakova i simbola.

    Svaki znak ili simbol ve po svojem grafikom izgledu ima odreeno znaenje, a dodatno objanjenje upisuje se u pojedini simbol.

  • PROGRAMSKA POTPORA 7

    Dva su osnovna elementa bitan preduvjet

    ispravnosti blok dijagrama:

    saznanje to treba uiniti s odreenim podacima i

    saznanje kada treba uiniti odreenu radnju u sklopu velikog broja potrebnih

    radnji.

  • PROGRAMSKA POTPORA 8

    U stvaranju blok dijagrama se koriste odreene pojmove i to:

    Blok to je naziv za grafiki simbol u kojem je oznaena jedna ili vie radnji.

    Programski korak drugi naziv za blok simbol.

    Poveznice okomite ili horizontalne linije koje povezuju blokove.

    Programski slijed slijed praenja izvoenja operacija.

    Uvjetno grananje razdvajanje nekog slijeda na dva razliita slijeda, a razdvajanje se vri na temelju nekakvog uvjeta.

  • PROGRAMSKA POTPORA 9

    Bezuvjetno grananje prekid normalnog slijeda operacija naredbom da se nastavak nalazi na

    nekom drugom mjestu u blok dijagramu.

    Programska petlja skup radnji koje se izvode uzastopce vie puta.

    Programska rutina jedna ili vie instrukcija koje ine logiku cjelinu u programu

    Podprogram- izdvojena logika cjelina skupa radnji koje se piu odvojeno od glavnog programa.

  • PROGRAMSKA POTPORA 10

    Elementi blok dijagrama

  • PROGRAMSKA POTPORA 11

    Poetak ili kraj blok digrama

    KRAJ

    KRAJ

    ili POETAK POETAK

    ili

  • PROGRAMSKA POTPORA 12

    Simbol obrade-procesiranje

    Simbol obrade- procesiranje

  • PROGRAMSKA POTPORA 13

    Symbol upita

    upit

    ISTINA - DA

    NEISTINA - NE

  • PROGRAMSKA POTPORA 14

    Razliiti oblici prikljunih toaka

    prikljuna toka

    bezuvetno

    grananje prikljuak s

    desne strane

    prikljuak s

    lijeve strane

  • PROGRAMSKA POTPORA 15

    Manji od dva unesena broja

    Poetak

    Unesi

    X,Y

    X

  • PROGRAMSKA POTPORA 16

    Algoritam za izraunavanje zbroja brojeva od 1 do N

    Poetak

    Unesi

    broj

    broj>=0

    Unesi

    broj

    Ispisati

    Sumap

    1) Postavi Sumap=0

    2) Unesi broj;

    3) Dok je broj>=0

    ponavljati 4-5

    4) Unesi broj;

    6) Ispisati Sumap

    Kraj

    Sumap=0

    Sumap=

    Sumap+broj

    5) Sumap=Sumap+broj;

    DA

    NE

  • PROGRAMSKA POTPORA 17

    Naelno se postupak nastanka programa moe podijeliti u sljedee korake:

    1. Postavljanje zadatka - uoavanje problema i odabir naina rjeavanja.

    2. Izrada fizikalnog modela - precizan opis i formulacija problema, ulazni podaci., izlazni podaci, granice, meusobna povezanost podataka i slino.

    3. Izrada matematikog modela - razmatranje logikog procesa i njegovo predoavanje matematikim izrazima; ulazne i izlazne varijable, konstante i njihova funkcijska ovisnost.

    4. Izrada algoritma - toan opis izvravanja radnji prikazan dijagramom toka koji je u sutini procedura izvoenja programa.

  • PROGRAMSKA POTPORA 18

    5. Dizajniranje programa

  • PROGRAMSKA POTPORA 19

    5. Testiranje programa (provjera programa) provodi se

    kod proizvoaa programa i kod neovisnih ispitivaa.

    Unato opsenom ispitivanju esto se pogreka

    otkriva tek kod krajnjeg korisnika.

    Razlog tome je sloenost suvremenih komercijalnih

    programa. U raunalnom nazivlju pogreke su dobile

    ime: bug.

    Bug je ime za trajnu pogreku u programu ili

    sklopovlju raunala.

    Debagger oznaava program ili sklop koji moe

    pomoi pri otklanjaju bug-ova u programu ili

    sklopovskom dijelu raunala.

  • PROGRAMSKA POTPORA 20

    Postupak otklanjanja pogreaka naziva se

    debugging

    6. Izrada dokumentacije - ( vaan dio ) za korisnika i za kasnije odravanje programa.

    U dokumentaciju se ubrajaju uputa za

    instaliranje programa, prirunici za korisnika, tehniki opis programa i samo u izuzetnim situacijama i izvorni program

  • PROGRAMSKA POTPORA 21

    Nii i vii programski jezici

  • PROGRAMSKA POTPORA 22

    Tehnike programiranja

  • PROGRAMSKA POTPORA 23

    1. MODULARNO PROGRAMIRANJE -

    temelji se na raspodjeli programskih

    funkcija na manje neovisne module

    izmeu kojih se potrebna komunikacija ostvaruje prijenosom podataka.

    Modularna struktura omoguava timski rad jer se isti modal moe koristiti u raznim drugim dijelovima programa ili u

    drugim programima..

  • PROGRAMSKA POTPORA 24

    2. STRUKTUIRANO PROGRAMIRANJE - predstavlja nain pisanja programa u kojemu se potuje strogi slijed odvijanja programa ili njegovih modela.

    Nema skokova u odvijanju programa prema poetku ili kraju ve se svaki smjer odvijanja programa odreuje izborom da-ne:

    Moduli su meusobno povezani hijerarhijski.

    Svaki model pripada jednoj od razina strukture i moe imati samo jednu ulaznu toku. Time se omoguava da se tijek programa moe bezprijekorno pratiti od poetka do kraja to olakava itljivost i otklanjanje greaka.

  • PROGRAMSKA POTPORA 25

    3. INTERAKTIVNO PROGRAMIRANJE je

    tehnika kada se za izradu programa

    koriste ve gotove logike strukture, izraene na primjer od strane isporuitelja programskog alata, te ih programer dorauje prema svojim potrebama i moe rezultate tada odmah i testirati.

    Produktivnije je ali manje sistematino.

  • PROGRAMSKA POTPORA 26

    4. OBJEKTNO USMJERENO PROGRAMIRANJE - nastalo je kao odgovor na nemogunost definiranja globalnih zajednikih podataka u strukturiranom programiranju.

    Podaci i operacije nad podacima spajaju se u cjeline nazvane objekt. Svi objekti iste vrste svrstavaju se u klasu a svaki od njih ima zasebno stanje unutar klase.

    U klasi se definiraju zajednike postavke za sve njene objekte koje oni mogu i ne moraju koristiti i veze prema drugim klasama.

    Povezanost klasa, tvori hijerarhijsku strukturu programa

  • PROGRAMSKA POTPORA 27

    Grafiki prikaz razvoja programskih jezika

    VISOKI

    NIVO JEZIKA

    NISKI

    NIVO

    JEZIKA

    LJUDSKI JEZICI(npr. HRVATSKI, ENGLSKI, )

    KOMPJUTRSKI PROGRMAKSI JEZIK C

    STROJNI JEZIK

    (binarni kod)

    If the line is not busy, connect to the Internet;

    else, wait

    If (line ! = busy)

    connect (Internet);

    else

    wait (5)

    10001111101100

    01100111011000

    VII NIVO JEZIKA

    VISOKI

    NIVO JEZIKA

    NISKI

    NIVO

    JEZIKA

    LJUDSKI JEZICI(npr. HRVATSKI, ENGLSKI, )

    KOMPJUTRSKI PROGRMAKSI JEZIK C

    STROJNI JEZIK

    (binarni kod)

    If the line is not busy, connect to the Internet;

    else, wait

    If (line ! = busy)

    connect (Internet);

    else

    wait (5)

    10001111101100

    01100111011000

    VII NIVO JEZIKA

  • PROGRAMSKA POTPORA 28

    Nii programski jezici kojima je osnovna karakteristika da su u upravljanju programom i u strukturi podataka odraava struktura raunala, tj. njegova arhitektura.

    U uem smislu strojni jezik raunala ( eng. Machine language, machine code ) binarni je oblik programa.

    U irem smislu strojni jezik je u binarnom obliku, heksadekadskom i mnemonikom obliku.

  • PROGRAMSKA POTPORA 29

    Prednosti strojnog jezika su:

    mogunost izravnog djelovanja na sklopovske dijelove raunala,

    djelotvorno iskoritenje memorije, i

    brzina izvoena programa.

    Nedostaci strojnog jezika su:

    sloenost postupka izrade programa, i

    ogranienost programa za jedan tip mikroprocesora.

  • PROGRAMSKA POTPORA 30

    Primjer nieg programskog jezika je assembler .

    Naziv asembler je dvoznaan: oznaava programski jezik i program za prevoenje.

  • PROGRAMSKA POTPORA 31

    Vii programski jezici

    Vii programski jezici ( eng. High level lenguages, HLL) su svi oni jezici ije se naredbe ne mogu izravno prevesti u

    binarne naredbe strojnog jezika.

    To znai da jedna naredba vieg programskog jezika ne moe prevesti u jednu naredbu binarnog strojnog jezika.

  • PROGRAMSKA POTPORA 32

    Prednosti viih programskih jezika su:

    jednostavnost pisanja programa,

    razumljivost programa i

    prenosivost programa.

    Nedostaci viih programskih jezika su:

    sporije izvoenje programa i

    nemogunost izravnog nadzora sklopov-skih dijelova raunala

  • PROGRAMSKA POTPORA 33

    Neki vii programski jezici ( C, TP ) omoguavaju da se dio programa napie u asembleru, te je tako mogue kombinirati vii i strojni jezik unutar istog programa.

    Svi programski jezici, osim strojnog,

    nazivaju se simbolikim programski jezici

    (eng. symbolic language) jer koriste

    znakovne simbole.