1 / 28

Historia informatyki Wykład 4 – Pierwsze (prawdziwe) komputery

Piotr Gawrysiak pgawrysiak@supermedia.pl. Historia informatyki Wykład 4 – Pierwsze (prawdziwe) komputery. 2007. To co to jest ten komputer…. Funkcje – przetwarzanie liczb Z tego wynika także przetwarzanie innego rodzaju danych – wszystko bowiem można zamienić ( zakodować ) na liczby

amato
Download Presentation

Historia informatyki Wykład 4 – Pierwsze (prawdziwe) komputery

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. Piotr Gawrysiak pgawrysiak@supermedia.pl Historia informatykiWykład 4 – Pierwsze (prawdziwe) komputery 2007

  2. To co to jest ten komputer… • Funkcje – przetwarzanie liczb • Z tego wynika także przetwarzanie innego rodzaju danych – wszystko bowiem można zamienić (zakodować) na liczby • Mechanizacja działania – człowiek przestaje być potrzebny do przetwarzania liczb (OK – może kręcić korbą…) • Autonomia działania – człowiek przestaje być potrzebny do pełnienia funkcji kontrolnych (czyli maszyna może podejmować decyzje o swojej pracy) • Z powyższych wynika w ogólności możliwość obliczania dowolnych (tj. takich które są obliczalne – nie każde są – twierdzenie Godla) wyrażeń matematycznych • Model teoretyczny – maszyna Turinga

  3. Maszyna Turinga • Matematyka na początku XX wieku – potrzeba systematyzacji i „utwierdzenia” podstaw • Bertrand Russell, Alfred North Whitehead, Principia mathematica (1910) • Kurt Gödel, On formally undecidable propositions of Principia mathematica and related systems (1931) • Turing - On computable numbers, with an application to the Entscheidungsproblem (1936) • Jeśli coś jest obliczalne, to może to obliczyć maszyna Turinga Kurt Gödel (1906-78)

  4. Głowica 0 0 1 1 0 1 0 1 0 1 1 1 0 Stan obecny Kier.ruchu Stankolejny Wej. Wyj. Tablica stanów Maszyna Turinga Alan M. Turing (1912-54)

  5. Pierwszy komputer… • W dużej mierze dzieło przypadku – Z1 zbudowany przez Konrada Zuse (świeżo po studiach) w pokoju mieszkania rodziców w 1938 • Całkowicie mechaniczny • Autonomiczny • Oparty o arytmetykę binarną • Z2, Z3 (1941) • Zbudowane już na zlecenie Luftwaffe • Z3 – sterowany programem zapisanym w pamięci wewnętrznej (czyli tak, jak współczesne komputery) • H1, H2 – pierwsze komputery przemysłowe, używane do automatycznego sterowania procesem produkcyjnym (… bomby typu „cruise” produkowanej przez zakłady Henschel) • Z4 – przeszmuglowany w 1945 roku do Szwajcarii (Zuse miał szczęście bo uznano Z4 za jedną z „tajnych” broni), w końcu stał się pierwszym komputerem używanym w szwajcarskim ETZ. Konrad Zuse (1910-1995)

  6. Druga Wojna Światowa • Wojna „technologiczna” • Niemcy – zaawansowana technologia (wojskowa) • USA – „zaawansowana” gospodarka • Wynik działań wojennych w dużej mierze zależny od wyników prac badawczych nad technologią wojskową (to szczególnie oczywiste w przypadku USA <-> Japonia) – bomba atomowa, radar, samoloty odrzutowe itd. • Potrzeby obliczeniowe • Obliczenia inżynierskie (np. w przemyśle lotniczym – vide komputery Zusego) • Szyfrowanie (i dekryptaż) wiadomości • Obliczenia związane z budową bomby atomowej i (później) wodorowej

  7. Szyfry - Enigma • Enigma – niemiecka maszyna szyfrująca, oferowana od końca I wojny światowej jako produkt komercyjny • Od początku II wojny światowej „przejęta” przez wojsko niemieckie i uznana za „oficjalny” system kodowania wiadomości • W pełni automatyczna – kodowanie polegało na „przepuszczeniu” sygnału elektrycznego przez zestaw kilku tarcz kodujących. Sygnał (odpowiadający literze) podawany przez klawiaturę, wynikowa litera – na tablicy świetlnej. • Dodatkowa tablica z wtyczkami – zwiększająca liczbę kombinacji • Przed kodowaniem (lub odczytaniem – do tego służyć mogła ta sama maszyna) trzeba było ustawić tarcze zgodnie z obowiązującym na dany dzień kodem

  8. Przykład działania Enigmy ABCDEFGHIJKLMNOPQRSTUVWXYZBDFHJLCPRTXVZNYEIWGAKMUSQO tarcza 1AJDKSIRUXBLHWTMCQGZNPYFVOE tarcza 2EKMFLGDQVZNTOWYHXUSPAIBRCJ tarcza 3 YRUHQSLDPXNGOKMIEBFZCWVJATreflektor Po zakodowaniu jednej litery pierwsza tarcza obraca się o jedną pozycję. Po wykonaniu pełnego obrotu o jedną pozycję obraca się druga tarcza itd.

  9. Enigma – zespół polski Polakom jako pierwszym udało się „rozpracować” szyfrowanie Enigmy Trochę pomógł przypadek (Niemcy jedną z maszyn wysłali do Gdańska zwykłą pocztą zamiast dyplomatyczną…), trochę niedbałość niemieckich szyfrantów, ale przede wszystkim znaczenie miała analiza matematyczna Pracownicy Biura Szyfrów – Marian Rejewski, Henryk Zygalski, Jerzy Różycki W 1939 roku wojna staje się nieunikniona, Polacy przekazują (zupełnie zaskoczonym ) Anglikom i Francuzom dane oraz zbudowany sprzęt (w tym tzw. bomby kryptologiczne) Rejewskiego i współpracowników Brytyjczycy zamiast „wykorzystać” do pracy nad dekryptażem wiadomości Enigmy odesłali do „drugorzędnych” zadań Całość objęta tajemnicą wojskową, dopiero niedawno „wychodzi” na jaw, szczególnie na zachodzie…

  10. COLOSSUS • Wraz z rozwojem działań wojennych metody „ręczne” przestają wystarczać – po prostu nie starcza czasu • Ponadto Niemcy wprowadzają bardziej skomplikowaną wersję Enigmy na potrzeby komunikacji na szczeblu sztabu generalnego – Geheimfernschreiber, Lorenz machine, Fish • Jedynym sensownym rozwiązaniem staje się analiza maszynowa tekstów depesz • Alan Turing i Tommy Flowers proponują urządzenie oparte na lampach elektronowych (1800 lamp), które będzie w stanie dokonywać operacji logicznych na ciągach znaków – zapisanych na taśmie papierowej • Maszyna ta to Colossus – pierwsze na świecie (1943) duże urządzenie elektroniczne służące do przetwarzania informacji • To jeszcze nie jest komputer – nie jest równoważny maszynie Turinga – to urządzenie specjalizowane • Pokazuje, iż zbudowanie w pełni elektronicznego (a zatem szybkiego!!!) urządzenia analizujacego dane i dokonującego na nich operacji – i to nie tylko arytmetycznych ale także logicznych – jest możliwe

  11. Colossus • Zainstalowany w Bletchey Park – brytyjskim ośrodku dekryptażu • Ponoć istniało kilka kolosów, używanych jeszcze nawet w latach pięćdziesiątych • Z racji tajności nie miał bezpośredniego wpływu na rozwój technologii – ale za to miał niebagatelny pośredni. Po wojnie ludzie z Bletchey musieli znaleźć cywilne zajęcia…

  12. Współczesna rekonstrukcja Colossusa

  13. Tymczasem w USA… • IBM Harvard Mark I- 1944 • IBM Automatic Sequence Controlled Calculator zbudowany dla Harvard University w 1944. 750000 części z czego 72 akumulatory zbudowane z maszyn liczących IBM, całość waży 5 ton.

  14. Tablice balistyczne • Potrzeby wojenne USA obejmują m.in. obliczenia tablic balistycznych – z czym nie dają sobie rady tradycyjne metody • Obliczenia ręczne • Obliczenia na analogowych analizatorach różniczkowych • Ballistic Research Laboratory w Aberdeen prosi o pomoc University of Pensylvannia • Dr. John W. Mauchley z Moore School UPenn zaczyna poszukiwać sposobu na szybsze obliczenia, zaznajamia się z pracami doktoranta Prespera Eckerta (zdolnego elektronika)… • Rozwiązanie – urządzenie w pełni elektroniczne = szybkie

  15. ENIAC • W 1943, Ordinance Department podpisuje kontrakt na budowę systemu do obliczeń • Eckert – chief engineer • Mauchley – principal consultant • Lt. Herman H. Goldstein, szef naukowy • Nazwa Electronic Numerical Integrator and Computer • Konstrukcję ukończono w 1945 już po zakończeniu II wojny światowej. Akurat wtedy tablice balistyczne stają się niezbyt potrzebne. Zaczyna się natomiast zimna wojna – Eniac przydaje się do prac związanych z opracowaniem bomby wodorowej.

  16. ENIAC fd

  17. ENIAC • Maszyna bardzo szybka jak na owe czasy – 5000 działań na sekundę (Mark I – 3 działania na sekundę), arytmetyka dziesiętna • Budowa „rozproszona” – cały komputer to seria modułów (accumulator, initiator, master programmer, multiplier, divider/square-root, gate, buffer, and the function tables), które można ze sobą łączyć • Modułowa budowa także samych „dużych” modułów – to ułatwiało naprawy • Łączenie paneli odpowiada programowaniu – za każdym razem budowano w ten sposób specjalizowaną maszynę obliczeniową • 42 panele, całość wypełniała sporą halę, wymagała ok. 200kW zasilania oraz sztucznego chłodzenia • Waga - 30 ton • Około 19000 lamp próżniowych (dziennie psuła się średnio jedna, co jest wynikiem całkiem niezłym), 100 tysięcy innego rodzaju części elektronicznych • Wejście i wyjście danych – za pomocą „standardowego” sprzętu IBM • W ciągu swojego użytecznego życia (do 1955 roku) wykona więcej obliczeń niż cała ludzkość do 1945 roku

  18. ENIAC - programowanie Trudność w programowaniu to główna wada ENIAC’a. Rozwiązaniem okażą się komputery z programem wewnętrznym (stored program computers)

  19. Znaczenie ENIAC’a • Moore School UPenn organizuje serię wykładów o „elektronicznej technice obliczeniowej” – uczestnicy z USA i Wielkiej Brytanii • Osoby biorące udział w wykładach to twórcy pierwszych komputerów: • Tom Kilburn - Manchester Baby Computer (1948) • Cambridge University - EDSAC (1948) • Von Neumann - IAS Computers • Eckert & Mauchly BINAC & UNIVAC (ci założyli firmę komercyjną) • Moore School - EDVAC (ukończony w 1952) • IBM Selective Sequence Electronic Calculator • Inne - JONNIAC, MANIAC, ILLIAC, SILLIAC… • Obecnie całego ENIACA da się zmieścić w jednym układzie scalonym – projekt Eniac on a Chip - http://www.ese.upenn.edu/~jan/eniacproj.html

  20. ENIAC on a chip Oryginalne moduły ENIACA zrealizowano przy użyciu bramek logicznych • Accumulator • Constant transmitter • Cycling Unit • Initiation Unit • Function Table • Master Programmer • High Speed Multiplier • Divider • Square Rooter

  21. John von Neumann • 1903-1957 • Węgierski żyd, uciekł do USA w latach 30tych • Cudowne dziecko (w wieku 6-ciu lat umie dodawać 8 cyfrowe liczby w pamięci) • Profesor matematyki w Princeton • Włączony w „wysiłek wojenny” USA • Konsultant naukowy armii USA • Opracowanie metody detonacji bomby atomowej • Udział w tworzeniu bomby wodorowej • Po zapoznaniu się z ENIAC proponuje ulepszony model komputera – oparty o „program wewnętrzny”

  22. Program wewnętrzny (stored program) • Zarówno dane jak i instrukcje programu są przechowywane w tej samej pamięci np. • ADD #100, R1 1000 0001 ADD to R1 0110 0110 data 100 • ADD @100, R1 1001 0001 ADD to R1 0110 0110 data at address 100 • Instrukcje zapisane sekwencyjnie razem z odpowiadającymi im danymi • Wykonywanie instrukcji sekwencyjne, chyba że trafiamy na instrukcję warunkową lub skoku która przenosi wykonanie programu do innego miejsca w pamięci (tj. nakazuje odczyt z innej niż kolejna komórki pamięci) • Fetch-Decode-Execute • Kodowanie binarne (nie zaś dziesiętne) • Całość zwana jest architekturą von Neumanna

  23. Komponenty komputera opartego o architekturę von Neumanna ArithmeticUnit Input ControlUnit Output Memory

  24. EDVAC Report • Von Neumann opisał wspomnianą architekturę w raporcie A First Draft of a Report of the EDVAC(1945), proponującym budowę komputera EDVAC (Electronic Discrete Variable Automatic Computer) • Mauchly i Eckert twierdzili, iż całość wymyślili oni, zaś von Neumann im pomysł ukradł… • A i tak komputery Zusego (Z4) oparte były na tym pomyśle wcześniej… IAS EDVAC

  25. Zaczyna się przemysłowe wykorzystanie komputerów…

More Related