1 / 27

Historia informatyki Wykład 3 – Machiny do liczenia

Piotr Gawrysiak pgawrysiak@supermedia.pl. Historia informatyki Wykład 3 – Machiny do liczenia. 2007. Maszyna licząca. Co to w ogóle jest „maszyna”?

fisseha
Download Presentation

Historia informatyki Wykład 3 – Machiny do liczenia

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 3 – Machiny do liczenia 2007

  2. 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?

  3. 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

  4. 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…

  5. 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.

  6. 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”

  7. Astrolabium Istniały też i wcześniejsze od astrolabium instrumenty – np. laska Jakuba

  8. 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)

  9. 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)

  10. 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

  11. Sektor

  12. 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

  13. 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.

  14. 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.

  15. 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…

  16. Suwak logarytmiczny • Przykład użycia - mnożenie Drugi czynnik Pierwszy czynnik Wynik Zwykle suwak posiada też dodatkowe skale – np. funkcji trygonometrycznych

  17. 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”.

  18. 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

  19. Kalkulator Shickarda Tablica mnożeń (kości Nepera) Sumator Aide memoire

  20. 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…

  21. 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

  22. Maszyna Pascala

  23. 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

  24. Bęben schodkowy Leibniza Aby pomnożyć 789 przez 2: Ustawiamy na bębnach 789 Kręcimy korbą dwa razy „Ręczny” mechanizm przeniesień

  25. 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

  26. 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.

  27. 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…

More Related