1 / 21

RP&PB Računalniško programiranje

RP&PB Računalniško programiranje. Uvod: metode in orodja za računalniško programiranje Danijel Rebolj 2010. Dodatni viri. M. Gams: Osnove dobrega programiranja. C Z, Ljubljana, 1985 http://en.wikipedia.org/wiki/Programming_language

errol
Télécharger la présentation

RP&PB Računalniško programiranje

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RP&PBRačunalniško programiranje Uvod: metode in orodja za računalniško programiranje Danijel Rebolj 2010

  2. Dodatni viri • M. Gams: Osnove dobrega programiranja. CZ, Ljubljana, 1985 • http://en.wikipedia.org/wiki/Programming_language • http://en.wikipedia.org/wiki/Timeline_of_programming_languages

  3. Programski jezikiStrojni jeziki • preprosta binarna koda, • enostavno berljiv za stroj • težko razumljiv za človeka 0110000101100111 1000111001011010 0010010111010110

  4. centralni procesor hitri pomnilnik (RAM, ROM) osnovne I/O enote izhodne enote zunanji pomnilniki tipkovnica miška tiskalniki risalniki zaslon disk CD Programski jeziki – strojni jezikiIzvajanje programa centralni elektronski kompleks podatkovna vodila (bus) I/O podsistem (periferija)

  5. Programski jeziki – strojni jezikiIzvajanje programa

  6. Programski jezikiNizkonivojski jeziki • tudi assembly language • še vedno na ravni strojnih ukazov • razumljivejši za človeka LDA 3220 MLT 0012 STO 2423

  7. Programski jezikiVisokonivojski (visoki) jeziki • So na bistveno višji abstraktni ravni kot nizkonivojski jeziki • Preprosti za razumevanje in uporabo (programiranje) za človeka • Niso neposredno razumljivi računalniku P = L*H

  8. Programski jezikiZnačilnosti visokih jezikov • neodvisnost od vrste računalnika  prenosljivost • podobni so naravnim jezikom • veliko število (preko 2000) – nastali so zaradi različnih potreb (npr. podatkovno usmerjeni, algoritemski, funkcijski, logični itd.)

  9. Programski jezikiJeziki prihodnosti Napovedprogramerjev za 2013

  10. modul 1 modul 1 prevajalnik (compiler) združevalnik (linker) izvajalni program modul 2 modul 2 ... ... modul n modul n sistemska knjižnica program v izvorni kodi program v vmesni strojni kodi program v strojni kodi Prevajalniki in združevalniki • Prevajalnik transformira izvorni program v semantično identičen strojni jezik. • Združevalnik poveže prevedene module.

  11. Prevajalniki in združevalniki Primer: JAVA • TextPad: zapišemo program v jeziku Java  program.java • Javac: prevedemo programprogram.java program.class • Java: program.class + vsi potrebni moduli (sprotno povezovanje)

  12. “Klasično” programiranje • Temelji na pojmu algoritma, spremenljivke in Von Neumanovega stroja • Značilnosti: • ročno načrtovanje, • sekvenčno programiranje, • sekvenčno izvajanje programov, • ročno kodiranje, • ročno upravljanje procesa programiranja (kodiranje, prevajanje, združevanje in testiranje)

  13. Orodja klasičnega programiranja • urejevalnik (EDI, EDIT) • prevajalnik (Fortran, Cobol, Basic, C, C++, Ada, Pascal, Lisp, Java,...) • združevalnik (LINK, LNK) • razhroščevalnik (DEBUG) • obstajajo tudi kombinirana okolja za podporo klasičnemu postopku progra-miranja (npr. LSED, TextPad, Bluefish)

  14. Sintaksa in semantika • Pravila, ki določajo kaj je dovoljeno, imenujemo sintaksa jezika (slovnica) • Sintaktično pravilen program je tisti, ki upošteva sintaktična pravila • Pomen programa imenujemo njegovo semantiko (= programska logika) • Semantično pravilen program je tisti, ki počne, kar od njega pričakujemo

  15. Ravni programiranja • Kreiranje kompleksnih programov je mogoče le, če predhodno določimo jasno splošno strukturo. • Načrtovanje splošne strukture programa (Top-down načrt) imenujemo tudi “programiranje v širšem smislu” • “Programiranje v ožjem smislu” (kodiranje), se nanaša na izvajanje detajlov načrta.

  16. Programski gradniki • Podatki: • Spremenljivke (reference na pomnilnik) • osnovni tipi (integer, double, string), • izpeljani tipi (kombinacije osnovnih tipov), • datoteke (sekvenčne, direktne, indeksne). • Instrukcije: • Krmilne strukture (sekvenca, selekcija, repeticija) • Moduli (podprogrami)

  17. Primer enostavnega programa • Osnova programa je algoritem za izračun kvadratne enačbe:

  18. Primer enostavnega programa Podatkovne strukture: Double a, b, c, D, x1, x2 Instrukcije (procedura): Input a, b, c D=b^2-4*a*c if D < 0 then print “Ni rešitve…” else x1=(-b-D^0.5)/(2*a) x2=(-b+D^0.5)/(2*a) print “Rešitev:”,x1, x2 end if

  19. Primer enostavnega programa • Kako to “vidi” računalnik: 1.0 input a,b,c 2.0 D=b*b-4*a*c x1=(-b-D^0.5)/(2*a) -3.0 x2=(-b+D^0.5)/(2*a) 16.0 -3.0 print x1,x2 1.0

  20. Primer enostavnega programa Različice uporabniškega vmesnika

More Related