270 likes | 608 Views
Piotr Gawrysiak pgawrysiak@supermedia.pl. Historia informatyki Wykład 3 – Machiny do liczenia. 2007. Maszyna licząca. Co to w ogóle jest „maszyna”?
E N D
Piotr Gawrysiak pgawrysiak@supermedia.pl Historia informatykiWykład 3 – Machiny do liczenia 2007
Maszyna licząca • Co to w ogóle jest „maszyna”? • Wikipedia – Maszyna - urządzenie zawierające mechanizm lub zespół mechanizmów, służące do przetwarzania energii lub wykonywania pracy mechanicznej. • Może lepiej w potocznym rozumieniu? Maszyna – coś wykonujące pracę, którą mógłby wykonać człowiek • Pracę zarówno fizyczną, jak i umysłową… • Przykład – kalkulator… Ale czy to jest maszyna licząca?
Starożytne kalkulatory Istotne jest tu zatem wykonanie części procesu myślowego związanego z wykonywaniem obliczeń przez mechanizm – nawet bardzo prosty Ponieważ zaś wykonywanie obliczeń jest czynnością żmudną i trudną – a jednocześnie potrzebną – toteż pierwsze mechanizmy wspomagające liczenie pojawiają się już bardzo dawno… • Astrolabium – starożytność, przed średniowieczem • Głównie obliczenia astronomiczne • Cyrkiel proporcjonalny – znany już w czasach rzymskich • Operacje arytmetyczne • Kwadrant – odrodzenie • Uniwersalny kalkulator naukowy • Sektor – późne odrodzenie • Specjalizowany kalkulator inżynierski (lub wojskowy) Przyrządy analogowe – których dokładność zależy od dokładności wykonania
Przewidywacze przypływów • To inny przykład analogowego kalkulatora - specjalizowanego • Pozwala on określić wysokość wody w porcie w zależności od pory roku i dnia Nb. Problem przewidywania przypływów sprowadza się do obliczenia złożenia szeregu funkcji trygonometycznych. Ta umiejętność przydaje się zaś w wielu innych zastosowaniach, zwykle wojskowych. Wrócimy do tego omawiając czasy zbliżone do okresu wojen światowych…
Współczesne kalkulatory analogowe • Współcześnie także wykorzystuje się tego rodzaju analogowe kalkulatory • Przykład – Flight Computers • Pozwalają na wykonanie typowych obliczeń niezbędnych pilotowi samolotowemu (poprawka na wiatr, zużycie paliwa, obliczenia wysokości, przeliczenia systemów miar itd.) • Taki przyrząd nie psuje się, nie wymaga zasilania itp.
Astrolabium • Właściwie instrument astronomiczny • Popularność zyskał za czasów świetności imperium arabskiego, ale musiał istnieć wcześniej… • Prawdopodobnie wymyślony przez Greków, wspomina o nim Ptolemeusz • Najstarszy zachowany egzemplarz datowany na 1062 r. n.e. • Co można zrobić mając astrolabium? Sporo. Np.: • obliczyć pozycję słońca i najważniejszych gwiazd o danej godzinie dowolnego dnia w roku – to istotne dla postawienia horoskopu • Obliczyć liczbę godzin pomiędzy wchodem i zachodem słońca • Obliczyć czas (znając pozycję słońca i gwiazd) • itd. (niektóre traktaty podają, iż możliwe jest wykonanie 1000 różnych operacji) • Niezbędny instrument wykształconego człowieka w średniowieczu • Instrukcja obsługi – np. A Treatise on the Astrolabe, Bred and Mylke for Childeren (Geoffrey Chaucer, 1392) – napisany dla „lytle sonne Lowis”
Astrolabium Istniały też i wcześniejsze od astrolabium instrumenty – np. laska Jakuba
Kwadrant • Rozwinięcie idei astrolabium • Urządzenie bardziej praktyczne – nie wymaga znajomości astronomii, a za to przeznaczone do wykonywania codziennych obliczeń (takich jak… projektowanie zegarów słonecznych) • Popularność od około XVI wieku, powstaje wiele różnych wersji opracowanych głównie przez profesorów ówczesnych uczelni wyższych (np. Edmund Gunter z Gresham College) • Przykład – kwadrant Williama Leybourna (1626-1700) • Obliczenia trygonometryczne (ale wg. „starego” systemu trygonometrycznego) • Kątomierz, pomiary wysokości itd. • Obliczenia kwadratów, sześcianów oraz pierwiastków • Mnożenie i dzielenie • Obliczenia niezbędne do budowania zegarów słonecznych na powierzchniach poziomych i pionowych (art of dialling) • Itd. (instrukcja obsługi – autorstwa Leybourne’a – liczy 260 stron)
Kwadrant Np. Mnożenie: Leybourn: „Take the lesser of the two Numbers to be multiplied out of the line and with that distance the Compasses, set one foot in the term of the greater Number; and bring the thread to the nearest distance; Then from 10 at the end of the line, take the nearest distance to the thread; this distance shall reach from the beginning of the line to the Product of those two Numbers being multiplied together…” Nb. Tu potrzebny jest jakiś cyrkiel (Compasses)
Sektor • Skoro i tak czasami właścicielowi kwadrantu potrzebny jest cyrkiel, to można pomyśleć o przyrządzie który go wymaga – jest to sektor • Wywodzi się z jeszcze wcześniejszego przyrządu – cyrkla proporcjonalnego (być może znali go już Rzymianie) • Narzędzie czysto obliczeniowe – już zupełnie niezwiązane z astronomią • Pierwsze wersje – dla artylerzystów (puszkarzy) – obliczenia ilości prochu, ciężaru kuli, kąta nachylenia lufy itd. Jedną z wersji opracował Galileusz
Obliczenia przy użyciu sektora Np. 100/7 = ? Odmierzamy b=100 Znajdujemy dwie liczby x i a takie że x*7=a (np. 20 i 140) Odpowiednio otwieramy sektor tak aby odległość pomiędzy punktami M i N (odległymi o 140 od osi sektora) była równa 100 Odległość pomiędzy punktami Q i P (odległymi o 20 od osi sektora) daje nam wynik y=14.28
Suwak logarytmiczny • Aby mógł powstać suwak logarytmiczny, potrzebne są logarytmy • John Napier (1550-1617), szkocki baron, wynalazca – logarytmów oraz „kości Nepera” • Logarytmy: • Logarytmowanie jest operacją odwrotną do potęgowania. • Najbardziej istotna własność – logarytm iloczynu jest równy sumie logarytmów. A zatem – mając tablicę wartości logarytmów – można sprowadzić operację mnożenia do samego dodawania • W 1614 Napier publikuje opis logarytmów „Mirifici Logarithmorm Canonis Descriptio”. W 1624 Henry Briggs i Kepler publikują pierwsze tablice logarytmiczne. Wykorzystanie logarytmów do obliczeń zaczyna zaś być coraz popularniejsze.
Suwak logarytmiczny • Aby jednak móc liczyć wykorzystując logarytmy, trzeba posiadać tablice logarytmiczne • Dwa problemy • przygotowanie tablic jest pracochłonne (co zresztą było inspiracją do wynalazków automatyzujących te prace – Charles Babbage; we Francji próbowano także tworzyć „manufaktury” obliczeniowe – 1794-1799 Charles de Prony) • Tablice są nieporęczne • W 1624 Gunter (ten od kwadrantu) wymyśla „line of numbers” – linijkę z podziałką logarytmiczną. Mając cyrkiel można już używać jej do mnożenia… • W 1633 William Oughtred oraz niezależnie Charles Delamain opisują przyrząd, będący „fizyczną” reprezentacją tablic logarytmicznych – (u Oughtreda - Koła Proporcji). Przyrząd ten to właściwie współczesny suwak logarytmiczny – tyle że „zwinięty” w kółko • Jedna z głównych zalet eg. Delamaina – suwaka można używać jadąć konno.
Suwak logarytmiczny • Od około 1650 istnieje już suwak logarytmiczny w formie współczesnej – ale bardzo rzadko jest używany • „Zwykli” ludzie posługują się sektorem; uczeni – tablicami logarytmicznymi • Dopiero wraz z nastaniem ery przemysłowej gwałtownie wzrasta zapotrzebowanie na inżynierów, oni zaś potrzebują przyrządu szybkiego i dokładnego w użyciu • Pod koniec XVIII wieku suwaki zaczyna produkować James Watt, pod koniec XIX wieku upowszechniają się w Stanach Zjednoczonych, zaś do połowy XX wieku suwak logarytmiczny staje się niezbędnym narzędziem każdego przedstawiciela nauk technicznych…
Suwak logarytmiczny • Przykład użycia - mnożenie Drugi czynnik Pierwszy czynnik Wynik Zwykle suwak posiada też dodatkowe skale – np. funkcji trygonometrycznych
Pierwsze maszyny • Maszyna z Antykihera • Odnaleziona we wraku okrętu, który około 150 r p.n.e. płynął w okolicach greckiej wyspy Antykithera • Mechanizm bardzo mocno zniszczony – od 1970 badany, najpierw aparatami rentgenowskimi, ostatnio przy wykorzystaniu tomografii komputerowej • Wszystko wskazuje na to, iż jest to analogowy komputer, który obliczał pozycje księżyca, gwiazd i planet oraz działał jako zmechanizowany kalendarz • Mógł być poruszany siłą wody – a zatem „liczyć” mógł zupełnie „sam”.
Wilhelm Shickard i jego kalkulator • Maszyna z Antykithera nie jest jednak uniwersalna. Można by powiedzieć, iż jest swego rodzaju specjalizowanym komputerem. • Miano twórcy pierwszego mechanicznego kalkulatora przypada Wilhelmowi Shickardowi (1592-1635). Był to profesor hebrajskiego, języków wschodu, matematyki, astronomii, geografii na uniwersytecie w Tubingen oraz – w chwilach wolnych – malarz, rytownik i ksiądz protestancki. • Przyjaciel Keplera – co jest nie bez znaczenia, z racji potrzeb obliczeniowych związanych z pracami nad dziełami takimi jak Harmonices Mundi • Kalkulator Shickarda jest uniwersalny – co prawda służy jedynie do dodawania liczb, ale mogą to być dowolne liczby
Kalkulator Shickarda Tablica mnożeń (kości Nepera) Sumator Aide memoire
Problem przeniesień • Kalkulator Shickarda reprezentuje kolejne cyfry liczby poprzez pozycję kół zębatych. • Dodanie jedności = obrót koła • Po przekroczeniu wartości 10 należy dokonać przeniesienia wartości do kolejnej „kolumny” • To działa dobrze dopóki nie ma zbyt wielu kół do obrócenia. Np.. Gdyby próbować wykonać działanie 999999+1, pierwsze koło musi poruszyć wszystkie elementy mechanizmu maszyny…
Kalkulator Pascala • Blaise Pascal (1623-1662) także był (w wolnych chwilach) twórcą maszyny liczącej – sumatora (pascalina) • Ojciec Pascala był poborcą podatkowym w Normandii – co m.in. wiązało się z koniecznością dokonywania obliczeń wysokości zebranych podatków • W ciągu życia zbudował około 50-ciu różnych maszyn liczących (a nawet próbował zarabiać na ich sprzedaży) których konstrukcja podobna była do maszyny Shickarda, z ulepszonym jednak znacznie mechanizmem przeniesień • Mechanizm przeniesień oparty o opadające ciężarki – brak ograniczenia długości „słowa”, ale delikatny i podatny na wstrząsy
Maszyna Leibniza • Wilhelm Leibniz (1646-1716) także konstruował maszyny liczące • Dokładniej – pierwszą maszynę, która była w stanie nie tylko dodawać (lub odejmować) lecz także mnożyć liczby • Podstawowy wynalazek Leibniza – „bęben schodkowy” – wykorzystywany potem aż po wiek XX w większości maszyn liczących
Bęben schodkowy Leibniza Aby pomnożyć 789 przez 2: Ustawiamy na bębnach 789 Kręcimy korbą dwa razy „Ręczny” mechanizm przeniesień
Maszyny nowsze • Pomysł Leibniza ulepszył i skomercjalizował Thomas de Colmar tworząc arytmometr około roku 1820 • To właściwie „porządnie” zaprojektowana i produkowana masowo maszyna Leibniza • Pod koniec XIX wieku używany powszechnie w ówczesnych korporacjach handlowych – choć było to dość drogie urządzenie (50 gwinei – np. dziennikarz zarabiał około gwinei za stronę tekstu) • Arytmometr daje początek przemysłowi obliczeniowemu – wkrótce pojawiają się konkurenci np. popularne i w Polsce maszyny Baldwina, Odhnera, czy też Brunsviga
Comptometer • Wkrótce (1886 – Dorr E. Felt) udaje się opracować maszynę, uruchamianą w pełni naciśnięciami klawiszy – Comptometer. Dla użytkownika nie różni się ona już wiele od współczesnego kalkulatora … • Typowe maszyny „korbowe” (w stylu Leinbniza) spotykamy jednak nawet aż do lat 80-tych XX wieku – choćby w Polsce, jako kasy sklepowe.
Pierwsze maszyny polskie • Abraham Stern (1762-1842) • Protegowany Stanisława Staszica • Około 1810 roku buduje serię maszyn liczących czterodziałaniowych, niektóre z nich mogły także wyciągać pierwiastki • Co istotne: jedna z maszyn Sterna wyposażona została w mechanizm sterujący jej pracą i pozwalający wykonać kilka operacji jedna po drugiej, po wprowadzeniu danych wejściowych – co można by określić mianem prostego programowania…