ebook img

Računarski sistemi: principi digitalnih sistema PDF

246 Pages·2005·3.104 MB·Serbian
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Računarski sistemi: principi digitalnih sistema

Predgovor Ovaj udžbenik je nastao na osnovu višegodišnjeg iskustva koje su autori imali i izvođenju nastave iz predmeta RAČUNARSKI SISTEMI na Odseku za matematiku i informatiku Prirodno-matematičkog fakulteta (ranije na SG Matematika Filozofskog fakulteta u Nišu). Ovaj predmet je predviđen programom studija na II godini smera za Računarstvo i informatiku i smera za Profesora matematike i računarstva. Međutim, iako su polazne tačke u pripremi ovog teksta bile predavanja i vežbe iz navedenog kursa, udžbenik prevazilazi okvire ovog predmeta i u suštini je pisan kao štivo koje se može upotrebiti za pripremu ispita na svim fakultetima na kojima se izučava računarstvo. Takođe, ovaj udžbenik može biti korisna referenca kako profesionalcima iz oblasti računarstva, tako i profesorima srednjih škola gde poslednjih godina računarstvo i informatika u sve većoj meri dobija značajno mesto. Zamisao autora je da se udžbenik publikuje u četiri toma čiji su podnaslovi: • Principi digitalnih sistema; • Struktura računara; • Pogled na mašinu i nivoi mašine; • Arhitektura procesora MC68020. U prvom tomu izlažu se matematičke i tehničke osnove računarstva. Prikazane su osnovi prevođenja brojeva, konverzije brojeva, kodiranja, detekcije i korekcije grešaka, logike i prekidačke algebre. Zatim je izložena materija o kombinacionim i sekvencijalnim kolima, a na kraju je to ilustrovano prikazom osnovnih kola od kojih se sastoje digitalni sistemi, kao što su registri, brojači i aritmetička kola. U drugom tomu prikazana je osnovna struktura računara, arhitektura CPU-a, detaljan opis osnovnih funkcionalnih celina računara i različitih ulazno-izlaznih uređaja, kao i osnove organizacije ulaza/izlaza i prenosa podataka. U trećem tomu nalazimo prikaz računara kao mašine u kojoj se mogu razlikovati različiti nivoi, pri čemu je svaki od nivoa detaljno opisan. Najzad, u četvrtom tomu su arhitektura mikroprocesora i asemblersko programiranje ilustrovani na primeru, na tržištu svojevremeno veoma uspešnog, mikroprocesora Motorola MC68020. Čitalac će u tekstu naći ogroman broj slika, tabela i različitih primera koji bi trebali da omoguće lakše razumevanje i usvajanje gradiva. Prilično veliki napori su učinjeni da u tekstu ne bude grešaka. U tom poslu nam je puno pomogao dr Ivan Milentijević, docent Elektronskog fakulteta u Nišu. Ukoliko grešaka ipak bude, autori se izvinjavaju čitaocima i zahvaljuju svima onima koji bi na te greške ukazali. Takođe se autori zahvaljuju recenzentima dr Miroslavu Ćiriću, redovnom profesoru Prirodno- matematičkog fakulteta u Nišu i dr Milunu Jevtiću, vanrednom profesoru Elektronskog fakulteta u Nišu, na korisnim primedbama i sugestijama. U Nišu, jun 2004. Autori x Predgovor I delu Prvi deo četvorotomnog udžbenika RAČUNARSKI SISTEMI nosi naslov PRINCIPI DIGITALNIH SISTEMA. Osim na PMF-u u Nišu, gradivo koje pokriva ovaj deo predaje se i u okviru predmeta RAČUNARSKI SISTEMI na Elektrotehničkom fakultetu u Srpskom Sarajevu (BiH). Namera autora bila je da se izlože osnovni matematički i logički koncepti koji predstavljaju temelj računarstva. Ovaj tom sastoji se od devet glava i to: 1. Istorijski razvoj računara 2. Brojni sistemi i prevođenje brojeva 3. Predstavljanje brojeva u računaru 4. Kodiranje, detekcija i korekcija grešaka 5. Bulova i prekidačka algebra i elementarna logička kola 6. Pojednostavljenje prekidačkih funkcija 7. Sekvencijalna kola 8. Registri i brojači 9. Aritmetička kola Prva glava posvećena je istorijatu razvoja računara počev od prve mašine koja je mogla da automatski vrši izračunavanja, preko prvih elektronskih digitalnih računara pa do današnjih dana. Čitalac može da se upozna sa motivima i problemima razvoja računarstva, kao i tendencijama koje su kroz različite generacije dovele do današnjih računara. U drugoj glavi objašnjava se pojam brojnog sistema i osnove brojnog sisteme i daju algoritmi za prevođenje brojeva iz jedne u drugu osnovu. Naročito su istaknuti binarni, oktalni i heksadecimalni brojni sistem kao najzastupljeniji u računarstvu. Treća glava sadrži prikaz različitih formi za predstavljanje brojeva u računaru i načina izvođenja aritmetičkih operacija nad tako predstavljenim brojevima. U četvrtoj glavi nalaze se neke osnove iz teorije informacija koje su posvećene kodiranju podataka i metodama za detekciju i korekciju grešaka koje se javljaju prilikom prenosa podataka. Peta glava pruža osnove iz Bulove i prekidačke algebre kao i prikaz elementarnih logičkih kola, tj. kola kojima se realizuju osnovne logičke funkcije. Šesta glava se praktično bavi sintezom kombinacionh mreža, pri čemu je najznačajniji aspekt tog problema minimizacija prekidačikih funkcija na osnovu kojih se vrši sinteza kola. Sedma glava je posvećena sekvencijalnim kolima, počev od teorijskih temelja, preko elementarnih sekvencijalnih kola kao što su lečevi i flip-flopovi, pa do analize i sinteze sekvencijalnih kola. Osma i deveta glava u suštini predstavljaju prikaz na koji su način teorijske osnove iz prethodnih glava upotrebljne za projektovanje osnovnih digitalnih kola iz kojih se sastoje računari, kao što su registri, brojači i aritmetička kola. Ukupno se u tekstu može naći 198 slika, 14 tabela i 63 rešena primera, uz izvestan broj nerešenih zadataka koji se nalaze na kraju pojedinih glava. U Nišu, jun 2004. Autori SADRŽAJ Sadržaj v Predgovor ix Predgovor I delu x 1. Istorijski razvoj računara 1 1.1. Praistorija 1 1.2. Prva generacija (1945-1955) 3 1.3. Druga generacija (1955-1965) 6 1.4. Treća generacija (1965-1980) 7 1.5. Četvrta generacija (1980 do danas) 8 1.6. Peta generacija (u razvoju) 10 1.7. Istorijat razvoja mikroprocesora i mikroračunara 10 2.Brojni sistemi i prevođenje brojeva 13 2.1. Konverzija baze 13 2.1.1. Pozicioni brojni sistemi 13 2.2. Prevođenje brojeva iz jednog brojnog sistema u drugi 15 2.2.1. Prevođenje brojeva kod koga se operacije izvršavaju u brojnom sistemu sa osnovom r 15 2 2.2.2. Prevođenje brojeva kod koga se operacije izvršavaju u brojnom sistemu sa osnovom r 15 1 2.3. Brojanje u sistemu osnove r 18 2.4. Binarne, oktalne i heksadecimalne konverzije 19 2.5. Problemi 23 3. Predstavljanje brojeva u računaru 25 3.1. Predstavljanje celih brojeva u fiksnom zarezu 25 3.1.1. Prezentacija znak-moduo 26 3.1.2. Nepotpuni komplement 26 3.1.3. Potpuni komplement 26 3.2. Obim reči 26 3.3. Tačnost 27 3.4. Odsecanje i zaokruživanje 28 3.5. Binarna aritmetika 29 3.5.1. Sabiranje 29 3.5.2. Oduzimanje 30 3.5.3. Množenje 32 3.5.4. Deljenje 32 vi RAČUNARSKI SISTEMI: Principi digitalnih sistema _________________________________________________________________________ ___________________ 3.6. Komplement aritmetika 33 3.6.1. Aritmetika u prezentaciji znak-moduo 33 3.6.2. Aritmetika u prezentaciji potpunog komplementa 34 3.7. Predstavljanje znakova 42 3.8. Predstavljanje brojeva u pokretnom zarezu 43 3.8.1. Normalizovana notacija 43 3.8.2. Opseg broja u pokretnom zarezu 44 3.8.3. Preciznost broja u pokretnom zarezu 44 3.8.4. Brojna osnova 44 3.8.5. Struktura FP formata 44 3.8.6. Predstavljanje broja nula 44 3.8.7. Nevidljivi bit 44 3.8.8. Standardi za FP 45 3.9. Problemi 46 4. Kodiranje, detekcija i korekcija grešaka 49 4.1. Težinski kodovi 49 4.2. Netežinski kodovi 51 4.2.1. Kod "višak 3" 51 4.2.2. Ciklični kod 52 4.2.3. Grejov kod 52 4.3. Detekcija grešaka 54 4.3.1. Definicija rastojanja 54 4.3.2. Kodovi za detekciju grešaka 56 4.3.3. Kod za proveru parnosti 56 4.3.4. M-izlaza-od-N kodovi 57 4.3.5. Bikvinari kodovi 57 4.3.6. Kodovi sa ostatkom 58 4.4. Kodovi za korekciju i detekciju grešaka 60 4.4.1. Bergerovi kodovi 60 4.5. Kodovi za korekciju 61 4.5.1. Hemingovi kodovi 62 4.6. Problemi 69 5. Bulova i prekidačka algebra i elementarna logička kola 71 5.1. Osnovni postulati i teoreme 71 5.2.Prekidačka algebra 75 5.2.1. Prekidačke funkcije i izrazi 76 5.2.2. Zadavanje prekidačkih funkcija 76 5.2.3. Fiktivne promenljive prekidačkih funkcija 79 5.2.4. Superpozicija prekidačkih funkcija 79 5.2.5. Osobine nekih funkcija jedne i dve nezavisne promenljive 79 5.2.6. Potpuna disjunktivna normalna forma i potpuna konjuktivna normalna forma funkcije 81 5.2.7. Klase prekidačkih funkcija i potpuni skupovi prekidačkih funkcija 82 5.3. Elemenetarna logička kola 87 5.3.1. AND 87 Sadržaj vii _________________________________________________________________________ ___________________ 5.3.2. OR 87 5.3.3. NOT 87 5.3.4. Izvedena logička kola 87 5.3.5. Ostali tipovi logičkih kola 88 5.4. Problemi 89 6. Pojednostavljenje prekidačkih funkcija 91 6.1. Algebarske manipulacije 91 6.2. Implikanti 92 6.3. Metoda Karnoovih mapa 93 6.4. MakKlaskijev metod minimizacije prekidačkih funkcija 106 6.5. Minimizacija kombinacionih mreža sa većim brojem ulaza i izlaza 112 6.6. NAND-NAND i NOR-NOR logika 115 6.6.1. NAND-NAND logika 116 6.6.2. NOR-NOR logika 118 6.6.3. Implementacija kombinacione logike pomoću ExOR logičkih kola 120 6.7. Korisna kola 122 6.7.1. Multiplekseri 123 6.7.2. Demultiplekseri 128 6.7.3. Dekoderi 130 6.8. Magistrale sa tri stanja 132 6.9. Programabilna kola 135 6.9.1. Komutatori tačaka ukrštanja 136 6.9.2. Programabilna AND i OR kola 137 6.9.3. Tipovi PLD kola 139 7. Sekvencijalna kola 147 7.1. Odnos između kombinacionih i sekvencijalnih kola 147 7.2. Pojam sekvencijalnih kola 148 7.3. Struktura sekvencijalnih kola 149 7.3.1. Podela sekvencijalnih kola 150 7.4. Lečevi 150 7.4.1. SR leč 150 7.4.2. D leč 153 7.5. Flip-flopovi 155 7.5.1. Metodi taktovanja 155 7.5.2. Kombinovanje lečeva kod flip-flopova 157 7.5.3. Master-slave flip-flop - okidanje na nivo 157 7.5.4. Master-slave JK flip-flop - okidanje na nivo 158 7.5.5. Flip-flop koji se okida na ivicu 158 7.5.6. Ivično okidani D flip-flop 159 7.5.7. Ivično okidani JK flip-flop 161 7.5.8. T flip-flop 163 7.6. Analiza rada sekvencijalnih kola 165 7.6.1. Tabela stanja i dijagram stanja 165 7.6.2. Strukture sinhronih sekvencijalnih kola 168 7.6.3. Opis rada sekvencijalnih kola 172 viii RAČUNARSKI SISTEMI: Principi digitalnih sistema _________________________________________________________________________ ___________________ 7.7. Procedura za projektovanje sekvencijalnih kola 176 7.7.1. Specifikacija problema 176 7.7.2. Konstrukcija dijagrama stanja i tabele stanja 177 7.7.3. Redudantna stanja 178 7.7.4. Izvođenje jednačine stanja 184 8. Registri i brojači 189 8.1. Registri 190 8.2. Pomerački registri 192 8.3. Brojači 194 8.3.1. Ripple brojač 195 8.3.2. Sinhroni brojač 201 9. Aritmetička kola 205 9.1. Sabiranje 205 9.1.1. Elementarna kola za sabiranje 205 9.1.2. Serijski i paralelni sabirači 208 9.1.3. Carry-lookahead sabirači 210 9.1.4. Carry select sabirači 219 9.1.5. Carry save sabirači 220 9.1.6. Carry-skip sabirači 224 9.1.7. Protočni sabirači 225 9.1.8. BCD sabirači 225 9.2. Kola za oduzimanje 227 9.3. Množači 230 9.3.1. Strukture množača neoznačenih brojeva 231 9.3.2. Množenje označenih brojeva 232 9.4. Deljenje 237 9.5. Komparatori 238 Indeks 241 Literatura 245 1. ISTORIJSKI RAZVOJ RAČUNARA Kao i svaka istorija, i istorija razvoja elektronskih digitalnih računara ima i svoju praistoriju, tj. pojavi savremenih računara prethodili su mnogi pokušaji da se napravi nekakva mašina sposobna da izvodi jednostavnije ili složenije računske operacije. U ovoj glavi ćemo izvršiti kratak pregled, kako tih "praistorijskih" pokušaja, tako i pregled razvoja različitih generacija računara. 1.1. Praistorija Ako ne računamo različita ručna računska sredstva, poput različitih vrsta računaljki i abakusa koji su se javili još u starom veku, možemo reći da je prvu računsku mašinu napravio 1642. godine poznati francuski matematičar i fizičar Blez Paskal (Blaise Pascal, 1623-1662). On je tada imao samo 19 godina a pomenuti poduhvat je izveo da bi pomogao svom ocu koji je bio poreznik. Paskalova mašina je bila u potpunosti mehanička i koristila je zupčanike a pokretala se okretanjem ručice. Ta mašina je mogla da izvodi jedino operacije sabiranja i oduzimanja. Međutim, trideset godina kasnije je slavni nemački matematičar Lajbnic (Gottfried Wilhelm von Leibnitz, 1646-1716) napravio računsku mašinu koja je, osim sabiranja i oduzimanja, mogla da izvršava i operacije množenja i deljenja. Naravno da je i ova mašina bila u potpunosti mehanička i nije donela nikakvu novinu u tehnologiji, ali ipak predstavlja ekvivalent jednostavnog džepnog kalkulatora 300 godina pre pojave džepnih kalkulatora kakve danas koristimo. Na ovom polju se ništa nije dešavalo narednih 150 godina, sve dok Čarls Bebidž (Charles Babbage, 1792-1871), profesor matematike na Univerzitetu Kembridž, nije izumeo diferencnu mašinu. Ova, takođe mehanička mašina, je mogla samo da sabira i oduzima, a koristila se za izračunavanje tablica u pomorskoj navigaciji. Mašina je projektovana tako da je izvršavala uvek isti algoritam, metod konačnih razlika korišćenjem polinoma. Najinteresantnija karakteristika diferencne mašine je njeno rešenje izlaza. Rezultati su upisivani na bakrenu ploču pomoću čeličnih kalupa. Na izvestan način, upotrebljeni metod je nagovestio kasniju primenu write-once medijuma, kao što su bile bušene kartice ili prvi optički diskovi. Mada je diferencna mašina radila prilično dobro, Bebidž se nije zadovoljavao računskim sredstvom koje je moglo da izvršava samo jedan algoritam. Ubrzo je počeo da troši, za ono vreme, sve veće i veće sume sopstvenog kao i veliku svotu vladinog novca, na projekat i konstrukciju naslednika diferencne mašine kojeg je nazvao analitička mašina. Analitička mašina se može smatrati prvim mehaničkim programabilnim računarom. Ona je imala četiri dela: memoriju, jedinicu za izračunavanje i ulaznu i izlaznu jedinicu zasnovane na principu bušenih kartica (naravno, sa odgovarajućim čitačem i 2 RAČUNARSKI SISTEMI: Principi digitalnih sistema bušačem kartica). Memorija je bila kapaciteta 1000 reči od po 50 decimalnih cifara i služila je za smeštanje promenljivih i rezultata. Jedinica za izračunavanje je mogla da prihvati operande iz memorije, da ih sabira, oduzima, množi ili deli, i da vrati rezultat u memoriju. Kao i diferencna, i analitička mašina je bila u potpunosti mehanička. Veliki napredak u odnosu na diferencnu mašinu sastojao se u tome što je analitička mašina bila računar opšte namene. Instrukcije su se čitale sa bušenih kartica i izvršavale. Neke instrukcije su nalagale prenos dva broja iz memorije u jedinicu za izračunavanje, izvršavanje određene operacije nad njima i vraćanje rezultata u memoriju. Druga grupa instrukcija je mogla da izvrši testiranje broja i uslovno grananje u odnosu na to da li je broj negativan ili pozitivan. Upisivanje različitih programa na bušene kartice je omogućavalo da analitička mašina izvršava različita izračunavanja, dok to nije bio slučaj sa diferencnom mašinom. Kako je analitička mašina bila programabilna, potreban je bio softver, a samim tim i programer. Bebidž je za taj posao najmio ženu po imenu Ada Avgusta Lovelas, inače kćerku lorda Bajrona. Gospođa Ada je tako prvi programer na svetu i njoj u čast je programski jezik Ada dobio ime (naročito zbog činjenice, što je naknadno utvrđeno, da su svi programi koje je ona napisala bili korektni). Na žalost, Bebidž nikada nije do kraja realizovao analitičku mašinu zbog njene komplikovane mehaničke konstrukcije i nesavršenosti tehnologije devetnaestog veka. Ipak, njegov rad ima veliki značaj, s obzirom da i moderni računari imaju sličnu strukturu, pa se može reći da je Bebidž praotac modernih digitalnih računara. Kako su sva pomenuta računska sredstva bila mehanička, za praktične početke razvoja električnih računara uzimaju se tridesete i četrdesete godine XX veka. Prvi veliki korak u razvoju ovih mašina načinio je nemački student tehnike Konrad Zuse koje je tokom tridesetih godina napravio niz automatskih računskih mašina zasnovanih na tehnologiji elektromagnetnih releja. Interesantno je to da Zuse nije bio upoznat sa Bebidževim radom. Njegove mašine su uništene u bombardovanjima tokom II svetskog rata, tako da one nisu uticale na dalji razvoj u ovoj oblasti. Ipak, Zuse je jedan od pionira na ovom polju. Nešto kasnije su Džon Atanasov (John Atanasoff) sa Ajova Stejt Koledža i Džordž Stibic (George Stibbitz) iz Belovih Laboratorija projektovali kalkulatore. Atanasovljeva mašina je bila jako napredna za ono vreme. Koristila je binarnu aritmetiku i imala kondenzatore kao memorijske elemente koji su se povremeno osvežavali radi sprečavanja curenja naelektrisanja. Savremeni dinamički RAM čipovi upravo rade na ovom principu. Međutim, ova mašina nikada nije proradila zbog neodgovarajuće tehnologije ondašnjeg doba. Stibizov računar je bio primitivniji od Atanasovljevog, ali je proradio. Rad ove mašine je javno demonstriran 1940. godine na konferenciji u Darmut Koledžu. U publici je bio i Džon Mokli (John Mauckley), tada anonimni profesor fizike na Pensilvanijskom Univerzitetu. Dok su Zuse, Stibic i Atanasov projektovali automatske kalkulatore, jedan mladić po imenu Hauard Ejken (Howard Aiken) se mučio ručno vršeći složena numerička izračunavanja tokom svog rada na doktorskoj disertaciji na Harvardu. Pošto je odbranio disertaciju shvatio je važnost mogućnosti računanja pomoću mašina. Otišao je u biblioteku i tamo otkrio Bebidžov rad. Odlučio je da napravi mašinu opšte namene na bazi releja umesto mehaničkih zupčanika zbog kojih Bebidž i nije uspeo. Njegova prva mašina, Mark I, završena je 1944. godine na Harvardu. Imala je 72 reči memorije od po 23 decimalne cifre, i ciklus instrukcije od 6 sekundi. Za ulaz i izlaz su korišćene bušene papirne trake. U vreme kada je Ejken dovršio sledeću mašinu Mark II, elektromagnetni releji bili su prevaziđeni. Počela je era elektronike i era elektronskih digitalnih računara. 1. Istorijski razvoj računara 3 Prava istorija elektronskih digitalnih računara deli se u nekoliko generacija. Vremenske periode tokom kojih su pojedine generacije trajale treba uzeti samo orijentaciono, jer različiti autori navode različite podatke. Ovo otuda što su računari pojedine generacije korišćeni i posle nastanka nove generacije računara, tako da je teško povući preciznu granicu. 1.2. Prva generacija (1945-1955) Motiv za ubrzani rad na elektronskim računarima bio je II svetski rat. Tokom jednog dela rata nemačke podmornice su pravile pustoš među britanskim brodovima. Komande i podaci o kretanju savezničkih brodova bili su slati iz Berlina putem radio veze. Naravno da su Britanci mogli da prisluškuju te radio poruke, ali je problem bio što su one bile šifrovane pomoću uređaja koji se zvao ENIGMA (interesantno je da je preteča ove mašine bio uređaj koji je konstruisao pronalazač amater Tomas Džeferson (Thomas Jeferrson) - bivši predsednik SAD). Još na početku rata je britanska obaveštajna služba uspela da nabavi jedan primerak mašine ENIGMA. Ali, da bi se vršilo dešifrovanje, potrebno je bilo vršiti veliki broj izračunavanja, a sve je to moralo da bude obavljeno vrlo brzo pošto se radio poruka uhvati. Britanska vlada je oformila tajnu laboratoriju gde je napravljen elektronski računar nazvan COLOSSUS. U projektovanju mašine učestvovao je i čuveni engleski matematičar Alen Tjuring (Alan Turing). COLOSSUS je proradio 1943, ali pošto je britanska vlada držala u strogoj tajnosti ovaj projekat i na njega je, kao na vojnu tajnu, stavljen tridesetogodišnji embargo, to COLOSUSS predstavlja slepo crevo, obzirom da nije uticao na razvoj drugih elektronskih računara. Ipak, bio je to prvi elektronski računar. Osim što je izazvao uništenje Zuseovog rada, i podstakao konstruisanje COLOSSUS-a, rat je uticao na razvoj računarstva i u SAD. Vojsci SAD je, radi zauzimanja elemenata u teškoj artiljeriji, bilo potrebno izračunavanje različtih tabela. Taj posao je, kada se ručno obavljao, zahtevao određeno vreme i bio je podložan greškama. Već pomenuti Mokli, koji je bio upoznat sa radom Atanasova i Stibica, znao je za potrebu armije za mehaničkim kalkulatorom, ali je predložio izradu elektronskog računara. Predlog je prihvaćen 1943. godine, i Mokli i njegov postdiplomac Ekert (J. Presper Eckert) su počeli da rade na elektronskom računaru koga su nazvali ENIAC (Electronic Numerical Integrator And Computer). Ova mašina se sastojala od 18000 vakuumskih cevi i 1500 releja. ENIAC je bio težak 30 tona i zauzimao je veličinu odbojkaškog igrališta. Snaga mašine bila je 140kW. Zli jezici kažu da se kvario u proseku svakih sedam minuta (što nije čudo, obzirom na ogromnu disipaciju i upotrebljenu tehnologiju) a za množenje dva broja potrebne su bile 3ms. Što se arhitekture tiče, ENIAC je imao dvadeset registara, a svaki je mogao da sadrži desetocifreni decimalni broj, i to tako što je svaka cifra predstavljena sa po deset vakuumskih cevi. Programirao se postavljanjem 6000 multipozicionih prekidača a veze između komponenata su bile žičane. Mašina je završena 1946. godine kada je bilo prekasno da se upotrebi u svrhu za koju je originalno bila namenjena. Međutim, kako je rat bio završen, Mokli i Ekert su organizovali letnju školu sa ciljem da objasne svoj rad kolegama. Ova letnja škola predstavlja početak eksplozije interesovanja za izgradnju velikih računara. Posle tog istorijskog trenutka mnogi drugi istraživači se se dali na posao proizvodnje elektronskih računara. Prvi naredni računar koji je proradio 1949. godine bio je EDSAC izgrađen na Univerzitetu Kembridž u Velikoj Britaniji. Njegov autor bio je 4 RAČUNARSKI SISTEMI: Principi digitalnih sistema Moris Vilks (Maurice Wilkes), a ovaj računar vredi pomenuti jer je to bio prvi računar sa zapamćenim programom. Sledili su JOHNIAC napravljen u firmi Rand Corporation, ILLIAC napravljen na Univerzitetu u Ilinoisu, MANIAC iz Los Alamos Laboratory i WEIZAC sa Vajcmanovog instituta u Izraelu. Ekert i Mokli su počeli da rade na narednom računaru EDVAC (Electronic Discrete Variable Automatic Computer), ali je taj projekat bio fatalno ugrožen kada su njih dvojica napustila Univerzitet u Pensilvaniji radi osnivanja kompanije u Filadelfiji (Eckert- Mauchley Computer Corporation). Posle više fuzionisanja, ova kompanija je postala današnja Unisys Corporation. U međuvremenu, jedan od učesnika ENIAC projekta, Džon fon Nojman (John von Neumann) je otišao na Prinstonov Institut za napredne studije da bi radio na sopstvenoj verziji EDVAC-a, koju je nazvao IAS mašina. U vreme kada je počeo da se bavi računarima fon Nojman je bio jedan od najvećih matematičara toga doba. Za njega kažu da je bio genije kalibra Leonarda da Vinčija. Govorio je više jezika, bio je stručnjak za fiziku i matematiku i mogao je da se priseti svega što je ikada čuo, video ili pročitao. Fon Nojman je zaključio da je programiranje računara pomoću velikog broja prekidača i kablova sporo i teško, i da je bolje program predstaviti u digitalnom obliku u memoriji računara. On je takođe shvatio da je, umesto decimalne aritmetike koju je koristio ENIAC, bolje koristiti binarnu aritmetiku (s obzirom da je kod ENIAC-a svaka cifra predstavljana sa po deset vakuumskih cevi od kojih je uvek samo jedna bila upaljena). Njegov arhitekturni princip, poznat kao fon Nojmanova mašina, primenjen je kod prvog računara sa zapamćenim programom EDSAC, i još uvek je osnova za gotovo sve računare i do današnjih dana. Ova arhitektura, kao i IAS mašina koju je fon Nojman izradio u saradnji sa Hermanom Goldštajnom (Herman Goldstine), imala je ogroman uticaj na dalji razvoj računara. Skica ove arhitekture je prikazana na slici 1.1. Memorija Ulaz Aritmetičko logička jedinica Izlaz Upravljačka jedinica Akumulator Sl. 1.1. Originalna fon Nojmanova mašina. Fon Nojmanova mašina je imala pet osnovnih delova: memoriju, aritmetičko logičku jedinicu, jedinicu za upravljanje programom i ulaznu i izlaznu opremu. Memorija se sastojala od 4096 reči od kojih je svaka imala 40 bitova. Svaka reč je sadržala ili dve 20-

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.