190 likes | 380 Views
Računarstvo. računarstvo a lgoritamski procesi o pisuju i transformišu informaciju t eorija, analiza, projektovanje, efikasnost, imlementacija, primene r ačunar: matematička mašina m etode: teorija, projektovanje, eksperiment m atematika, tehnika, prirodne nauke
E N D
Računarstvo • računarstvo • algoritamski procesi • opisuju i transformišu informaciju • teorija, analiza, projektovanje, efikasnost, imlementacija, primene • računar: matematička mašina • metode: teorija, projektovanje, eksperiment • matematika, tehnika, prirodne nauke • nauka / tehnologija (D. Knuth, R. Hoare, E. Dijkstra, N. Wirth...)
Podoblasti računarstva • 1. hardver • 2. organizacija računarskih sistema • ... • 2.2. računarsko-komunikacione mreže • ... • 3. softver • 3.1. programske tehnike • 3.2. softversko inženjerstvo... • 3.2.4 verifikacija programa • 3.4. operativni sistemi... • 4. podaci • 4.1. strukture podataka
Podoblasti računarstva (nast.) • 5. teorija računarstva • ... • 5.2. analiza algoritama i složenost problema... • 5.4. matematička logika i formalni jezici • 6. matematika izračunavanja • 6.1. matematička analiza • 6.2. diskretna matematika • 6.3. verovatnoća i statistika... • 7. informacioni sistemi • 7.1. modeli i principi • 7.2. upravljanje bazama podataka
Podoblasti računarstva (nast.) • 7.3. čuvanje i pretraživanje informacija • 7.4. aplikacije informacionih sistema... • 8. metodologije izračunavanja • … • 8.2. veštačka inteligencija (obrada prirodnog jezika) • 8.3. računarska grafika • 8.4. obrada slike • 8.5. prepoznavanje oblika • 8.6. simulacija i modeliranje • 8.7. obrada teksta... • ...
Podoblasti računarstva (nast.) • 9. primene računarstva • 9.1. obrada administrativnih podataka... • 9.5. umetnost i društvene nauke • 9.6. CAD (projektovanje uz pomoć računara) • 10 računarske sredine • 10.1 računarska industrija (i standardi) • 10.2. računari i obrazovanje... • 10.5. pravni aspekti računarstva... • 10.7. računaska profrsija (i kodeksi dobre prakse i etika) • ...
Programiranje (nast.) • Primer (R.Sethie: Programming Languages – Concepts and Constructs) • jula 1962.g. • raketa sa Venerinom sondom bez posade, Mariner I • uništena 290 sekundi posle lansiranja • gubitak: 18-20 miliona US$ • uzrok: greška u programskom fragmentu ifnot (raketa u kontaktu sa radarom) then korigovati putanju leta • korišćen prethodno u četiri lansiranja na Mesec • tri stotine nezavisnih testiranja
Programiranje (nast.) • Primer (R.Sethie: Programming Languages – Concepts and Constructs) • jula 1962.g. • raketa sa Venerinom sondom bez posade, Mariner I • uništena 290 sekundi posle lansiranja • gubitak: 18-20 miliona US$ • uzrok: greška u programskom fragmentu ifnot (raketa u kontaktu sa radarom) then ne korigovati putanju leta • korišćen prethodno u četiri lansiranja na Mesec • tri stotine nezavisnih testiranja
Izbor programskog jezika • Pomaže da se napiše dobar program • lako čita • lako razume • lako modifikuje
Malo istorije računarstva • Ranih 40. godina 20. veka, kao spoj: • teorije algoritama(matematika, analitičnost) • matematičke logike • kriterijumi valjanosti izvođenja i formalnih principa rasuđivanja • 1936.g: Alan Turing: univerzalni računar ne postoji • Uvid u granice automatskog računanja • Podatak i instrukcija (program) – ekvivalentnost zapisa • pronalaska programabilnih računara (projektovanje, tehnika) • Ranije: mehaničke i elektromehaničke naprave(Paskal, Lajbnic, Bebidž)
Informacione tehnologije • Postupci, metode i tehnike pikupljanja, obrade, prenosa, čuvanja i prezentovanja informacija • Pronalazak pisma (pre oko 5000 g) • Prva informaciona revolucija: 15.v, štamparija • Druga informaciona revolucija: tehnologija digitalne informacije, 20.v. • Danas: • Tehnologije senzora (npr. digitalna video kamera, čitač bar koda, skener, miš, tastatura) • Komunikacione tehnologije (npr. kablovi, telefonske linije, Internet) • Računarske tehnologije (računarski sitemi za čuvanje i obradu informacija) • Tehnologije prikazivanja (npr. ekran terminala, štampač, LCD ekran (Liquid Crystal Display))
Informacione tehnologije: razvoj • Periodi: • Premehanički: od 3000g.pne do 1450.g.ne • Sistemi pisanja i brojanja (klinasto pismo; usavršavanje: Sumerci, Mesopotamci; Egipćani; Feničani; Grci; Rimljani • Tehnologije: “stylus”, glina; papirus, olovka; koža, listovi; papir – Kina • Brojevi • Egipćani: 1-9 (|); 10 (U), 100 (spirala), 1000 (lotosov cvet) • Između 100 i 200.g.ne Hindu, devetocifreni brojevni sistem • Oko 875.g.ne koncept nule • Arapski trgovci: dekadni sistem iz Azije u Evropu u 12. veku • Tehnologija: abakus • Mehanički • Elektromehanički • Elektronski
Informacione tehnologije: razvoj (nast.) • Mehanički: 1450 - 1840.g. • 1450.g. Johan Gutenberg – štamparija • “računari” opšte namene: ljudi • Broj Pi na 500 decimala (3 godine) • 1600-te: V. Outred, sveštenik: klizajući lenjir – analogna računaljka • 1642.g. B.Paskal: “Paskalina” sabira i oduzima • 1670.g G.Lajbnic “Paskalina” množi i deli • 1820.g. Č.Bebidž “Diferencijska mašina”: dijagrami kvadrata i kubova brojeva (1991.g. Londonski muzej);3 tone, 2x4m, 4000 delova • 1830.g. Č Bebidž: analitička mašina – projekat; sličan današnjim računarima; Augusta Ada Bajron – bušene kartice, program
Informacione tehnologije: razvoj (nast.) • Elektromehanički: 1840-1940.g. • Električna struja • Telekomunikacije • telegraf (Morzeova azbuka, 1835.) • telefon 1876. (Bel) • radio aparat 1894. (Markoni) • Računanje • 1880-1890. H.Holerit; uređaji za čitanje kartica (IBM) • 1930-40. H.Aiken (Harvard) Mark I: program (papirna traka), ulaz(bušene kartice), smeštanje rezultata (elekromehanički prekidači); 17x2.5m, 750000 delova, 800km žice, 3 miliona električnih spojeva; 1944. završena; kraj elektromehaničkog perioda
Informacione tehnologije: razvoj (nast.) • Elektronski: 1940-danas • Elektronske vakuum cevi • 1939, SAD, prototip sa 300 cevi • 1941, Nemačka, Konrad Zuse (Cuze), Z3 programabilni računar – projekat • 1943, Engleska, Tjuring, Colosus (dešifrovanje); 1800 cevi – aritmetika – specijalna namena • 1943. američka vojska: ENIAC (“The Electronic Numerical Integrator and Calculator”); • Eckert, Mauchly; 1946. završen; 1700 cevi, 30 tona, 30x3m – računao trajektorije u sekundama – specijalna namena • EDVAC – programabilan; projekat • John von Neumann – 1945-47; koncept elektronskog programabilnog računara • 1949. EDSAC M. Wikes – realizacija programabilnog računara • 1949. UNIVAC Eckert, Maucly – projekat komercijalnog računara
Generacije savremenih elektronskih računara • I generacija (1951 – 1958) • Elektronske cevi Bušene kartice • Magnetni doboš – memorija Mašinski i simbolički jezik • Nauka, inženjerstvo • II generacija (1959 – 1963) • Poluprovodnici za tranzistore • Od 1954 – silicijum umesto germanijuma • Magnetno jezgro – memorija Magnetni diskovi i trake • FORTRAN: John Backus, 1957 • blizak matematičkoj notaciji • efikasno prevođenje na mašinski jezik • LISP, 1958, McCarthy, rad sa listama; • COBOL • Prenisovost programa, čitljivost • Novi korisnici
Generacije savremenih elektronskih računara (nast.) • III generacija (1964 – 1979) • Integrisana kola – silicijumski čip • MOS (Metal Oxide Semiconductor) memorija - silicijumski čip • Telekomunikacioni sateliti • Operativni sistemi • 1972, Kovalski: Prolog – neproceduralan • Algol 60 (60-tih g.) • Algol W (1966): poboljšano struktuiranje podataka • Pascal (1971): dalja poboljšanja • Modula 2 (1983): koncept modula (Wirth) • Oberon (1988): Wirth
Generacije savremenih elektronskih računara (nast.) • CPL (Strachy 1966) – Combined Programming Language: nije u potpunosti implementiran; uvodi koncepte • BCPL (Richards 1969): Basic CPL – za pisanje kompilatora • C 1972 – Dennis Ritchie – implementacioni jezik za softver vezan za operativni sistem UNIX (1973. prepisan u C) • 1977 usavršen sistem tipova C-a • C++ (Stroustrup 1986) – definisanje novih tipova; klase pozajmljene od Simule 67; strogo tipiziran sistem • 1989. C standard / vs. K&R
Generacije savremenih elektronskih računara (nast.) • IV generacija (1979 – danas) • LSI, VLSI • Mikroprocesor: memorija, logika i kontrolna kola • Personalni računari, npr. IBM PC, Apple Macintosh • Poslovna i lična upotreba • Jezici IV generacije – specijalne namene - za rad sa bazama podataka, raširenim tabelama, obradu teksta • Internet - teleizračunavanje
Zadatak • Naći na Internetu tekstove i fotografije: • Paskal, Lajbnic, Bebidž, Ada Bajron, Dž. fon Nojman, Zuse, Tjuring, Eckert, Mauchly • Abakus, Mark I, ENIAC, EDVAC, EDSAC, UNIVAC • Internet