Transcript Document
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
if not (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
if not (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
Magnetni doboš – memorija
Nauka, inženjerstvo
Bušene kartice
Mašinski i simbolički jezik
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