Dějiny výpočetní techniky
Transkript
Dějiny výpočetní techniky
Michal Musílek, 2009 [email protected] http://www.musilek.eu/michal/ • Charles Babbage, tvůrce prvních počítačů • Ada Lovelace, první programátor v dějinách • Jacquardovy štítky jako záznam programu • Hollerithovy štítky jako databázové záznamy 1791 – 1871 anglický matematik, filozof a vynálezce tvůrce prvních počítačů, vzhledem k době vzniku sestavených výhradně z mechanických součástí 1822 … začátek vývoje Difference engine 1833 … začátek vývoje Analytical engine Analytical engine … 1. Turing-kompletní počítač Stroj pro výpočet hodnot polynomických funkcí. Sloužil k výpočtům potřebným k sestavení velmi přesných tabulek logaritmů a goniometrických funkcí. V roce 1991 sestavili v londýnském muzeu vědy funkční repliku Difference engine, která pracuje naprosto bezchybně. Na serveru YouTube najdete videa s ukázkami činnosti uvedené repliky. Vysvětlení principu výpočtů pro změnu hledejte na anglické Wikipedii. Ch. Babbage se snažil svůj DE dál zdokonalovat. Roku 1833 se však vrhl do nového náročnějšího projektu Analytical engine. Tak se asi stalo, že stavbu difference engine zcela nedokončil. K myšlence diferenčního stroje se vrací v letech 1847 – 1849 … Diferencial engine No 2 Inspirován Babbagem staví švédský konstruktér Per Georg Scheutz v letech 1837 – 1843 svůj diferenční stroj. Prodává jej britské vládě (1859) a USA (1860). Stroje jsou prakticky využívány při sestavování logaritmických tabulek. Do třetice inspirován Babbagem i Scheutzem sestrojí švédský vynálezce Martin Wiberg v roce 1875 malý a dokonalý diferenční stroj. Zajímavé je, že i ve vývoji diferenčních strojů se projevila „miniaturizace“. Zatímco Babbageův stroj byl mohutný, Scheutzův už měl jen velikost pianina a Wibergův velikost šicího stroje. Všechny stroje byly poháněny lidskou silou, otáčením kliky na konci hřídele. Všechny diferenční stroje byly sestrojeny pouze v několika exemplářích. Projekt AE zahájil Babbage roku 1933, ale nikdy jej nedokončil a zdá se, že ani nemohl dokončit. Předběhl o 100 let dobu, jeho myšlenky mohly být použity při konstrukci počítačů ve 40. letech 20. století, ale bohužel mezitím zapadly a často musely být znovu objevovány. AE měl být poháněn parním strojem. AE měl být univerzální, tj. programovatelný. Program se zaznamenával na děrné štítky. Vstup a výstup byl propojen s tiskárnou. Mlýnek = procesor (řídící a aritmeticko-logická jednotka) umožňoval větvení programu, skoky, cykly i jednoduchou práci s podprogramy. Sklad = paměť: Vnitřní … mechanické paměťové registry s kapacitou až 1000 padesáticiferných čísel; Vnější … děrované karty (děrné štítky), se zápisem programu a konstantních dat. Vstupní a výstupní jednotka s tiskárnou; složité bylo přepínání tisku mezi vstupem a výstupem. Programátorkou Analytical engine, tedy i prvním programátorem počítačů v historii byla Augusta Ada King, hraběnka z Lovelace, velmi nadaná matematička. Po seznámení s Ch. Babbagem se začala zajímat o mechanické počítače. Detailně popsala funkci Analytical Engine a dále se podílela na jeho vývoji. Navrhla způsob, jak počítač Analytical engine naprogramovat pomocí děrných štítků. Zavedla pojmy podmíněný a nepodmíněný skok, cyklus a podprogram. 1815 – 1852 Zmiňuje se také o algoritmizaci jakožto základu programování. Lze říci, že Ada položila základy programování tak, jak je i my dnes chápeme. Nebyl nikdy zcela dokončen. Některé jednotlivé funkční části však byly zkompletovány a použity. Zachované části jsou dnes uloženy v londýnském Science museum: http://www.sciencemuseum.org.uk/ Byl společným dílem Ch. Babbage a A. Lovelace. Zajímavá je odlišnost názorů na „umělou intel.“. Na památku Ady Lovelace byl pojmenován programovací jazyk Ada, jehož hlavními rysy jsou bezpečnost a spolehlivost. Ani první elektronické počítače nebyly všechny Turing-kompletní. Např. počítač ABC spuštěný 1942, tj. Atanasoff–Berry Computer, sloužil pouze k řešení soustav lineárních rovnic. Významnou programátorkou prvních elektronických počítačů byla také žena. Jmenovala se Grace Hopper a mimo jiné vyvinula první kompilátor, realizující překlad z vyššího programovacího jazyka do strojového kódu. Charles Babbage napsal mimo jiné článek Ninth Bridgewater Treatise, ve kterém vysvětluje svou teorii, podle níž Bůh stvořil zákony (v podstatě programy) řídící postupný vznik živočišných druhů, místo aby každý druh stvořil speciálním zázrakem. Zatímco Charles Babbage věřil v rozvoj „umělé inteligence“, Ada Lovelace tvrdila, že sebelepší počítací stroj nevymyslí nic nového, tvůrčího, dokáže jen to, co ho lidé naučili, i když předčí své tvůrce přesností a rychlostí. A) http://www.youtube.com/watch?v=0anIyVGeWOI&feature=fv sr (4 min) B) http://www.youtube.com/watch?v=KBuJqUfO4-w (6 min) C) http://www.youtube.com/watch?v=GJiyGvoYd5E (2 min) Videa s anglickým komentářem, na kterých uvidíme mimo jiné difference engine v činnosti. Podobný princip použil při konstrukci svého stavu Basile Bouchon, který roku 1725 použil děrovaný pás papíru k urychlení tvorby vzorů při tkaní. Nešlo ale o automatický proces, jen o urychlení práce tkalců. Proto ještě nemůžeme mluvit o programu v pravém smyslu slova. Děrnou „maxipásku“ nahradil roku 1728 Jean Fouchon děrnými „maxištítky“ (kartami) a tím umožnil ovládat větší počet nití v osnově. Ještě stále však nešlo o automatický stav. Roku 1745 vytvořil Jacques de Vaucanson první automatický stav, opakování vzorů na látkách při jejich výrobě se programovalo pomocí papírových děrovaných karet. Jacques de Vaucanson (1709 – 1782 )proslul jako světoznámý konstruktér mechanických automatů s lidskou nebo zvířecí podobou, známý byl např. jeho hráč na příčnou flétnu nebo mechanická kachna z měděného plechu. Jeho úžasné automaty byly zničeny za revoluce, ale jeho nápad neupadl v zapomění. 1752 – 1834 Francouzský vynálezce 1804 Zdokonalil tkalcovský stav pro tkaní dvoubarevných vzorů. Pro řízení práce stavu (program) použil děrné štítky. 1860 – 1929 Americký statistik, vynálezce a podnikatel. Pro sčítání lidu v USA 1890 zavedl použití děrných štítků jako média (nosiče) pro záznam dat. Současně zkonstruoval stroje sloužící jejich hromadnému zpracování. Jeden ze „zakladatelů“ IBM. Nápad snad dostal při cestě vlakem, když mu průvodčí označoval jízdenku. První štítky byly velmi jednoduché a měly kruhové otvory. Později se stal standardem 80 sl. štítek s „obdélníky“. Nejprve ruční (viz obrázek), později na automatických strojích, kde se text, čísla či kód zobrazily a potom se štítek současně vyděroval a opatřil popisem. Nejprve na tabulačních strojích, které uměly štítky číst, třídit, údaje na nich zapsané počítat, sumarizovat a výsledky tisknout. Štítky představovaly vlastně „papírovou“ databázi. Co štítek, to databázový záznam (record). Později byla osvědčená technologie převedena na první elektronické počítače. Štítky začaly sloužit, kromě záznamu dat, také pro záznam programu počítačů. Tak se spojila Jacquardova a Hollerithova idea využití papírových děrných štítků. Slouží jako jednoduchá databáze, se kterou lze pracovat (vyhledávat, třídit) bez děrnoštítkových tabelačních strojů. Základní informace jsou zakódovány na okrajích karty. Kruhový otvor je buď izolován od okraje, nebo propojen s okrajem karty. Karty budeme vyrábět na příštím cvičení. Pokyny na http://www.musilek.eu/michal/odk.html vás povedou. Vyberte si jednu osobnost dějin (i nedávných) výpočetní techniky a pro ni zpracujte okrajově děrovanou kartu. Další jednu, či dvě karty můžete (ale nemusíte) zpracovat pro současníky této osobnosti, kteří se proslavili v jiném oboru (umělci, cestovatelé, politici, …) O vybrané osobnosti dějin výpočetní techniky zpracujte také stručný referát. Stručný referát se vejde na 1 až 2 listy papíru formátu A4 (minimum 1½ strany, maximum 4 strany A4). Stránka A4 na výšku, všechny okraje 2,5 cm Text odstavců … Times New Roman 12 pt obyč. Nadpis = jméno osobnosti (Times N. R. 20 pt) Části: základní údaje (narozena kdy, kde; zemřela kdy, kde; národnost a povolání, kterým se věnovala), život (stručný životopis, dětství, vzdělání, rodina, kontakty s kolegy, obrázek či foto osobnosti), dílo (co vykonala pro rozvoj VT, obrázek, schéma) literatura (z jakých knih, časopisů a on-line zdrojů autor referátu čerpal)