3. 3
Historia komputerów - przed 1945
• 1614 - Szkocja - John Napier odkrył
logarytmy.
• 1622 - Anglia - William Oughtred stworzył
suwak logarytmiczny.
• 1642 - Francja - Blaise Pascal
skonstruował mechaniczną maszynę do
dodawania - Pascalinę.
• 1673 - Niemcy Gottfried Wilhelm von
Leibnitz, skonstruował maszynę
arytmetyczną. 1675 - odkrył rachunek
różniczkowy, całkowy, system dwójkowy.
• 1822 - Charles Babbage rozpoczął prace
nad konstrukcją maszyny różnicowej...
źródło:
Andrew S. Tanenbaum, Systemy operacyjne, Helion, 2010
5. 5
Charles Babbage
• W 1817 r. ukończył uniwersytet w Cambridge,
a potem wykładał w nim nauki ścisłe.
• Babbage zajmował się astronomią, mechaniką,
organizacją fabryk. Uważał, że zastosowanie nauk
ścisłych do procesów pracy jednocześnie
zwiększyłoby ich wydajność i obniżyło koszty.
• W 1834 r. założył brytyjskie Statistical Society,
założył też British Association for the Advancement
of Science i Royal Astronomical Society.
6. 6
Tablice logarytmiczne
• Table of the logarithms of the
natural numbers from 1 to
108000, Charles Babbage.
• Tablice logarytmiczne były
podstawową pomocą do obliczeń
naukowych, geodezyjnych,
astronomicznych i inżynierskich.
7. 7
Prace nad tablicami
• Babbage skompletował 3 grupy współpracowników:
– pierwsza kilkuosobowa grupa miała za zadanie formułowanie
problemów obliczeniowych i określanie metod ich rozwiązania,
– druga grupa miała przeliczać próbkowo te problemy,
– trzecia grupa (około 100 osób) miała dokładnie je przeliczyć,
wyniki podając w postaci tablic.
• Trzecią grupę Babbage chciał zastąpić maszyną.
8. 8
Obliczanie wartości wielomianów
• Wielomian n-tego stopnia:
f(x) = anxn + an-1xn-1 + an-2xn-2 + ... + a1x1 + a0,
gdzie an < > 0, a liczby a0, a1, a2, ..., an są współczynnikami wielomianu
• Przedstawienie wielomianu według schematu Hörnera:
f(x) = (...((anx + an-1)x + an+2)x + ... + a1)x1 + a0
źródło: Waldemar Wietrzykowski,
Computational Neuroscience, Digital Intelligence Laboratory
9. 9
Metoda różnic skończonych
F(x) = x2 + 4, n=2
• Działanie maszyny Babbage
oparł się na metodzie różnic
skończonych.
• Umożliwia ona obliczenie kolejnej
wartości wielomianu za pomocą
jedynie [n] dodawań.
• Wyeliminowało to konieczność
wykonywania operacji mnożenia i
dzielenia.
źródło:
http://www.computerhistory.org
10. 10
Maszyna różnicowa. Zasada działania
• Składa się ona z n+1 takich samych sumatorów, które można oznaczyć
jako S0,S1,...,Sn. Zadaniem sumatora jest przechowywanie liczby (wyniku
sumowania) oraz wykonywanie operacji sumowania liczb. Jedna z tych
liczb jest przechowywana w sumatorze, a druga pobierana z sąsiedniego
sumatora reprezentującego wyższą różnicę (wyższy numer).
• Sumator S0 jest przeznaczony na przechowywanie kolejnych wartości
funkcji wielomianu, a sumatory S1,...,Sn służą do przechowywania
kolejnych różnic.
• Sumatory mają zdolność ustawienia w nich wartości początkowej i
wykonywania operacji sumowania między przyległymi sumatorami.
źródło: Waldemar Wietrzykowski,
Computational Neuroscience, Digital Intelligence Laboratory
11. 11
Maszyna różnicowa. Zasada działania
źródło: Waldemar Wietrzykowski,
Computational Neuroscience, Digital Intelligence Laboratory
12. 12
Maszyna różnicowa, cd.
• Maszyna dodawała szeregowo - operacje na długich liczbach
trwały długo (około 60 dodawań na minutę).
• Babbage po raz pierwszy zastosował :
– pamięć pośrednią dla przeniesień,
– "antycypowane przeniesienie", które powodowało
zrównoleglenie obliczeń.
• Powstał pomysł utworzenia samodzielnej jednostki
arytmetycznej - "młyna", zastosowanego w maszynie
analitycznej.
13. 13
Maszyna różnicowa, cd.
• Maszyna różnicowa Babbage`z to
rodzaj ulepszonego (jak na tamte
czasy) "kalkulatora", który
wykorzystywał metodę różnicową.
• W odróżnieniu od maszyn
Leibniza i Pascala, po ręcznym
ustawieniu początkowego stanu,
dalsze działania maszyny
różnicowej nie wymagały już
żadnej ingerencji użytkownika
poza kręceniem korbą.
źródło:
http://www.computerhistory.org
14. 14
Maszyna różnicowa, cd.
• Maszynę - system kół zębatych i
przekładni - wykonywano z metalu.
• Pracami kierował inżynier
J.Clement. Babbage zerwał z nim
współpracę w 1833 r. ze względu
na zaleganie w płatnościach. Prac
nie wznowiono.
• Zmontowaną część maszyny
(nadal sprawną) można oglądać w
Muzeum Nauki w Londynie.
źródło:
http://www.computerhistory.org
15. 15
Maszyna różnicowa. Współcześnie
• Pierwszy kompletny egzemplarz
maszyny został zbudowany w
latach 1989 -1991 Muzeum Nauki
w Londynie.
• Wykonana z brązu i stali według
planów Babbage'a i XIX-
wiecznymi środkami.
• Urządzenie okazało się w pełni
sprawne i zdolne dokonywać
obliczeń z dokładnością do 31
cyfr.
źródło:
http://www.wired.com
16. 16
Maszyna analityczna
• Niepowodzenia przy budowie maszyny różnicowej
spowodowały, że Babbage całkowicie zajął się nową
koncepcją maszyny - analitycznej.
• Babbage pracował nad nią od 1834r.
• Maszyna analityczna:
– urządzenie liczące,
– programowalne,
– uniwersalne.
17. Maszyna analityczna. Części 17
składowe
• Pamięć - kolumny kół, w
późniejszym okresie zastąpione
bębnem.
• Arytmometr (jednostka centralna) -
„młyn”, obliczenia arytmetyczne
miały być wykonywane dzięki
obrotom kół i przekładni.
• Przekładnia - powodująca
przenoszenie liczb z pamięci do
arytmometru i odwrotnie.
• Urządzenie wejściowo-wyjściowe
- karty dziurkowane (wg. idei
Jacquarda).
18. 18
Bębny sterujące (mikrokod)
Akumulatory Licznik instrukcji (PC)
Młyn (operacje arytmetyczne, CPU) Rejestry (pamięć)
M
Czytniki kart
Widok z góry
19. 19
Maszyna analityczna cd.
• Maszyna analityczna odczytuje program oraz dane z odpowiednio
przygotowanych kart perforowanych – kart danych (powodujących
„załadowanie” liczby do odp. rejestru), kart dyrektyw oraz kart operacji
(programu).
• Np. aby obliczyć wyrażenie a(b+c)/(d-e) należało „załadować” liczby a..e
do rejestrów V1..V5; następnie przygotować następujące karty dyrektyw:
– 2, 3, 6, 6, 1, 7, 4, 5, 8, 7, 8, 9
• I następujące karty operacji:
– +, *, -, /
• Efekt – sekwencja operacji:
– V2+V3 -> V6
– V6*V1 -> V7
– itd.
20. 20
Maszyna analityczna cd.
• Maszyna analityczna (jako całość) zawsze traktowana była
przez Babbage’a jako „ćwiczenie intelektualne”.
• Prace nad tym silnikiem prowadził samodzielnie, jedynie
krótko pomagała mu Lady Lovelace.
• Po śmierci Babbage`a prace nad silnikiem kontynuował jego
syn Henry. Skonstruował on drukarkę oraz „procesor”
maszyny (młyn), które w 1906r. użyte zostały do
wydrukowania wielokrotności liczby pi.
21. 21
Maszyna analityczna cd.
• Nie doczekała się realizacji praktycznej.
• Jej konstrukcja posłużyła późniejszym twórcom (głównie Johnowi von
Neumannowi) do opracowania współczesnych komputerów.
• Maszyna analityczna była zapowiedzią uniwersalnego komputera:
– praktycznie nawiązał do niej Howard Aiken (1900-1973), twórca
komputera Harvard Mark,
– inspirację teoretyczną czerpał z niej Alan Turing (1912-1954).
• Dziś tytuł ojciec komputerów niektórzy odnoszą
do Babbage'a.
22. 22
Babbage - prywatnie
• Georgiana Babbage (1793-1827),
żona Charlesa Babbage urodziła
ośmioro dzieci w 13 lat. Tylko
troje z nich dożyło wieku
dojrzałego:
– Benjamin Herschel (1815/78).
– Dugald Bromheald (1823/01
– Henry Prevost (1824/18)
• Babbage załamał się psychicznie,
był arogancki i konfliktowy. Miał
trudności z pozyskiwaniem
finansów na prowadzenie pracy
naukowej i budowę swoich
maszyn.
24. 24
Augusta Ada King, hrabina Lovelace
• Córka poety Lorda Byrona, którego nigdy nie poznała.
• W latach 1842-1843 przetłumaczyła dla Babbage'a
rozprawę włoskiego matematyka Louisa Menebreana na
temat maszyny analitycznej. Do artykułu dołączyła zbiór
uwag, które opisywały szczegółowo metodę obliczania
liczb Bernoulliego za pomocą maszyny, opis ten uznano
pierwszym komputerowym programem.
• Przypuszczała, że maszyna analityczna mogłaby
tworzyć grafikę albo komponować muzykę.
• Trwa jednak spór, czy naprawdę rozumiała dogłębnie
idee ukryte za programowaniem maszyny Babbage'a,
czy raczej była wykorzystywana przez Babbage'a do
kreowania wizerunku.
• Dziś uważana jest za pierwszego programistę.
25. 25
Pamięci Lovelace
• 10 grudnia 1980 r. Ministerstwo
Obrony Stanów Zjednoczonych
zatwierdziło opis nowego języka
programowania nazwanego ADA.
• Jej podobizna widnieje na
hologramach autentyczności
produktów Microsoft.
• Rokrocznie 24 marca
obchodzony jest Ada Lovelace
Day - dzień kobiet które wnoszą
szczególny wkład w rozwój nauk
ścisłych.
26. 26
Pamięci Babbage’a
• Niektóre dzieła Babbage‘a
oraz połowa jego mózgu
znajdują się w Hunterian
Museum w Lodnynie.
28. 28
Źródła
• Andrew S. Tanenbaum, Systemy operacyjne, Helion, 2010
• Computer History Museum
http://www.computerhistory.org/babbage/engines
• Magazyn WIRED, http://www.wired.com
• San Diego Supercomputer Center
http://www.sdsc.edu/ScienceWomen/lovelace.html
• The History of Computing Project
http://www.thocp.net/biographies/lovelace_ada.html
• The MacTutor History of Mathematics archive
http://www-history.mcs.st-andrews.ac.uk/
• http://www.babbagethemovie.com
• http://en.wikipedia.org/wiki/Charles_Babbage