Raunari i matematika Dr Dragan Maulovi Departman za























































































- Slides: 87
Računari i matematika Dr Dragan Mašulović Departman za mat. i informatiku Univerzitet u Novom Sadu
PRVI DEO Na plećima divova l l l Predmehanička era Mehanička era Električna era
Predmehanička era
Predmehanička era Glavni blagajnik kod Inka: l Pločice sa rupama za računanje l Kanapi i čvorovi za zapisivanje brojeva
Predmehanička era l Drvene računaljke i brojanice: abakus, suan pan
Predmehanička era l l l Kamenčićima: calculus Odatle: kalkulator Na slici su prikazani brojevi 82 i 1241
Predmehanička era l l William Oughtred (1575– 1660): šiber
Predmehanička era l Štapom i kanapom se mogu obavljati i složenije operacije: Napierovi štapići za računanje
Mehanička era
Mehaničke sabiraljke l Heron iz Aleksandrije: mehanički brojač l Williem Schickard 1623: automatizacija osnovnih operacija
Mehaničke sabiraljke l Blaise Pascal 1642: +, -, masovna upotreba l Gotfried Wilhelm Leibnitz 1671: sve četiri operacije
Mehanički računar l Čarls Bebidž (1792— 1871) l ‚‚I have converted the infinity of space which was required by the conditions of the problem into the infinity of time’’
Analitička mašina Čarlsa Bebidža
Analitička mašina Čarlsa Bebidža
Prvi programer l Ada Augusta King (1815— 1852) l ‚‚If you can’t give me poetry, give me poetical science!’’
Prvi program Ade Auguste
Električna era
Električne računaljke l Frederic Bull 1918: bušene kartice, tabulator, sortirač (izbori u USA)
Električne računaljke l Konrad Zuse 1936: Elektromehanički računar Z 1
Električne računaljke l Howard Aiken, 1939: Mark I (IBM ASCC automatic sequence controlled calculator)
DRUGI DEO ‚‚Misleća mašina’’ l l Tjuringova mašina Elektronska era Tjuringov koncept digitalne mašine Tjuringov koncept veštačke inteligencije
Alan Tjuring 23. 6. 1912 – 7. 6. 1954.
Tjuring i Entscheidungsproblem l l 1935. pohađa Newmanov kurs “Foundations of Mathematics” Centralni deo kursa opisuje Hilbertov Entscheidungsproblem i diskutuje o ideji algoritma kao mehaničkog procesa
Tjuring i Entscheidungsproblem l Entscheidungsproblem: Hilbert, Ackermann 1928. “Grundzüge der theoretischen Logik” Da li postoji ALGORITAM koji može da odluči da li je data rečenica tačan aritmetički iskaz? l dva nivoa: filozofski i matematički
Tjuring i Entscheidungsproblem l aprila 1936. Tjuring daje Newmanu na uvid svoju prvu verziju rada “Computable Numbers” u kome negativno rešava Entscheidungsproblem: l uvodi pojam (matematičke) mašine l pokazuje da ne postoji mašina koja rešava Entscheidungsproblem
Tjuringova mašina 1. 2. 3. traka tabela prelaza kontrola
Primer: Tjuringova mašina za sabiranje binarnih brojeva 110 + 011 -----1001
1 1 0 @ 0 1 1 # START Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 0 @ 0 1 1 # START Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 0 @ 0 1 # # d 1 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 0 @ 0 1 # # d 1 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 0 @ 0 1 # # d 1 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 0 @ 0 1 # # d 1 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 0 @ 0 1 # # s 01 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 @ 0 1 # # w 1 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 1 # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 1 # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 1 # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 1 # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 1 # # START Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 # # # d 1 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 # # # d 1 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 # # # d 1 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 # # # d 1 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 1 1 @ 0 # # # s 01 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 1 @ 0 # # # w 0 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ 0 # # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ 0 # # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ 0 # # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ 0 # # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ 0 # # # START Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ # # d 0 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ # # d 0 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ # # d 0 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ # # d 0 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 | 0 1 @ # # s 01 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| | 0 1 @ # # w 0 Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| 0 0 1 @ # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| 0 0 1 @ # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| 0 0 1 @ # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| 0 0 1 @ # # ff Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| 0 0 1 @ # # START Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| 0 0 1 @ # # rew Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| 0 0 1 @ # # rew Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| 0 0 1 @ # # rew Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
| 0 0 1 @ # # rew Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 0 0 1 @ # # STOP Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
1 0 0 1 @ # # STOP Tekuće stanje mašine 0 1 @ # START # d 0 # d 1 rew d 0 s 00 s 01 d 1 s 01 s 11 s 00 � w 1 � w 0 � w 1 s 01 � w 1 | w 0 s 11 | w 0 | w 1 w 0 0 ff 0 ff w 1 1 ff 1 ff ff ff START ff rew STOP 1 STOP � |
Značaj Tjuringovog rada l l l Detaljna analiza pojma izračunljivosti, pojam univerzalne mašine Tjuringova univerzalna mašina = RAČUNAR
Elektronska era: ENIAC Proradio 12. 7. 1946.
Elektronska era: ENIAC l l l Težina: 30 tona 19000 elektronskih cevi Potrošnja: 140 k. W Brzina: 5000 sabiranja u sekundi Memorija: 20 decimalnih brojeva Cena: 487000 USD
Tjuringov koncept digitalne mašine l l Računar je univerzalna mašina Program u unutrašnjoj memoriji Binarni sistem, 1024 kao jedinica mere Logičke operacije kao osnova hardvera
Tjuringov koncept digitalne mašine ‚‚If it should turn out that the basic logics of a machine designed for the numerical solution of differential equations coincide with the logics of a machine intended to make bills for a department store, I would regard this as the most amazing coincidence that I have ever encountered. ’’ Howard Aiken, 1956.
Univerzalna mašina l l ENIAC je morao da se dogradi da bi mu se omogućilo da uradi neki novi posao Tjuring predlaže da se hardver fiksira, a da se sve nove operacije realizuju programerski
Program u unutrašnjoj memoriji l l ENIAC se programirao lemilicom Tjuring predlaže da se program pohranjuje u memoriji Proces programiranja ne treba da menja hardver računara!
Binarni sistem Decimalni sistem: uslovljen istorijskim i kulturnim nasleđem Binarni sistem: 0 = nema struje 1 = ima struje Računaru je svejedno DECIMALNI BINARNI Cifre 01234 0 1 56789 Primeri 1 2 3 4 5 1 10 11 100 101
Binarni sistem l l l ENIAC radi decimalno, a Tjuring predlaže binarno Jedinica mere: 2¹º = 1024 I program i podaci su u memoriji računara predstavljeni binarno Slika pored: Komponenta ENIACa koja pamti jednu decimalnu cifru
Logičke operacije su osnova računara x y x y x x 0 0 0 0 1 1 1 0 0 1 1 1 1
Aritmetika i logika: polusabirač
Aritmetika i logika: sabirač
Vizija l Februara 1947. A. Tjuring u London Math. Soc. drži predavanje o mogućnostima računara; govori o l l profesionalnim programerima i s/w industriji programskim jezicima i interpretatorima simboličkih jezika
Vizija Izveštaj A. Tjuringa iz 1948: l Operativni sistem l Logička kontrola programa (IF, GOTO) l Stek (BURRY, UNBURRY) l Potprogrami l Biblioteke potprograma
Računari i matematika danas l l Teorija algoritama Teorija računske složenosti
Studija slučaja: Teorija računske složenosti l Klasa P l Klasa NP l P = NP?
Studija slučaja: Teorija računske složenosti l RSA kriptosistem kao primer kriptosistema sa javnim ključem l Ključ: Caesar +2 PORUKA: ŠIFRA: Tajna poruka Vclpc rqtwmc
Studija slučaja: Teorija računske složenosti l RSA kriptosistem kao primer kriptosistema sa javnim ključem
Studija slučaja: Teorija računske složenosti l RSA kriptosistem kao primer kriptosistema sa javnim ključem