Charles Babbage

Az eddig megismert mechanikus számológépek nagyrészt egy-egy konkrét feladat ellátása céljából jöttek létre. Legtöbbjük képességei annyira korlátozottak voltak, hogy a feltaláló asztaláról szinte rögtön valamely tudományos érdekességeket gyűjtő múzeumba kerültek. Nem csoda, ha e masinákról senkinek sem a mai komputerek jutnak eszébe. A számítógépek közös jellemzője ugyanis, hogy programozhatóak, azaz egyetlen gép nagyon sokféle összetett feladat elvégzésére utasítható. Ebben a cikkben a programozható gépekig vezető utat tekintjük át.

Automatizálással bizonyos, addig emberek által végzett gépies tevékenységeket meg lehet gyorsítani és pontosabbá lehet tenni. Ezt ismerte fel a francia Falcon, aki 1728-ban lyukkártyával vezérelhető szövőszéket készített. A szövőszéken igen sok (gyakran több ezer) szál fel-le mozgatásával alakul ki a szövet mintája; a lyukkártya a szálak mozgatásához szükséges információt hordozza. A kártyán egyfajta táblázat található, amely megmutatja, hogy a különböző munkafázisokban a szálaknak milyen helyzetben kell lenniük. A kártyát letapogató berendezés érzékeli, hogy a táblázat adott cellájában van-e lyuk, és eszerint állítja be a szálat. LyukkártyaA Falcon által megalkotott mechanizmust Joseph-Marie Jacquard tovább finomította: több lyukkártyát összekapcsolva végtelenített lyukszalagot készített, így tetszőlegesen bonyolult mintázat létrehozására tette alkalmassá a szövőszéket. A mai értelemben ez mégsem nevezhető programozásnak, mivel a szövőszék "programja" (azaz a lyukkártyák dekódolásának módja) nem változtatható. A kártyán, illetve szalagon csak bemeneti adatok találhatóak.

A programozhatóság nemcsak azért előnyös, mert nem kell minden feladatra új gépet szerkesztenünk. Adott program különböző adatokkal lefuttatva különböző eredményeket hoz, amelyek további programok számára szolgálhatnak bemenetként. Az első, valóban programozható gép Jacquard szövőszéke után nem sokat váratott magára.

Charles BabbageMa egyértelműen Charles Babbage-et tekintik a modern számítástechnika megalapozójának, kortársai közül azonban kevesen értékelték munkásságát. Talán ennek következtében viszonylag kevés pontos életrajzi adat áll róla rendelkezésre, még születésének helye és ideje is vitatott.
Babbage 1791-ben vagy 1792-ben látta meg a napvilágot egy felső-középosztálybeli angol családban. Gyermekkorában különcnek számított, nehezen találta meg társaival a közös hangot - e tulajdonsága egész életén végigkísérte. Matematika iránti érdeklődése korán megmutatkozott, középiskolásként Leibniz, Lagrange, Newton és Euler műveit tanulmányozta. A cambridge-i egyetemre kerülve az ottani matematikaoktatást túlságosan felületesnek és konzervatívnak találta, ezért mindent elkövetett, hogy a modern ismereteket meghonosítsa Cambridge-ben. Külön társaságot hozott létre e célból, valamint francia matematikusok műveit adta ki angol fordításban.

Ezzel kezdődött Babbage beilleszkedése az angol szellemi életbe. Később részt vett a Királyi Csillagászati Társaság megalapításában, amelynek négy évig az elnöki tisztségét is betöltötte. Élete során még számos tudományos közösségnek volt a tagja, több díjat nyert, ezeket azonban nem sokra becsülte. A tudomány számos területét művelte sikerrel: kedvenc területe a csillagászat volt, de foglalkozott matematikával, közgazdaságtannal és rendszerszervezéssel is. Kevesen tudják, hogy egy, a brit posta számára írt elemzésében Babbage alkotta meg az egységes postai díjszabás elméleti alapjait.

DifferenciagépA számolás automatizálásának kérdéséhez őt is gyakorlati okok vezették. Állítólag egyszer egy társával már órák óta bonyolult csillagászati számításokat ellenőriztek, amikor Babbage kifakadt: "Adná Isten, hogy ezeket a kalkulációkat gőzgéppel lehessen elvégezni!" Nem sokkal ezután komolyan is foglalkoztatni kezdte a kérdés: 1822-ben értekezést írt Táblázatok kiszámítására szolgáló gépek elméletének alapelvei címmel, majd kollegái biztatására az angol kormányhoz fordult támogatásért, hogy elképzelését kivitelezhesse. Rövid huzavona után meg is kapta a kért összeget, és hozzálátott a differenciagép elkészítéséhez (a készülék angol neve differential engine, emiatt szokás differenciamozdonyként is emlegetni). A szerkezet az eredeti tervek szerint hatodfokú polinomok, azaz a0 + a1x + a2x2 + ... + a6x6 alakú kifejezések különböző egész x-ekre vett helyettesítési értékeinek kiszámítására lett volna alkalmas. A gép érdekessége, hogy mindezt csupán összeadások segítségével valósította volna meg. 

0 6    
1 9 3  
2 16 7 4
3 27 11 4
4 42 15 4

Tekintsünk erre egy példát! A mellékelt táblázat második oszlopa a másodfokú polinom helyettesítési értékeit mutatja 0-tól 4-ig. A harmadik oszlop az egymást követő értékek közti különbséget, a negyedik ezek különbségeit tartalmazza. Látható, hogy az utóbbi értékek végig azonosak. Hasonló jelenség figyelhető meg hatodfokú polinomoknál is. Babbage ötlete arra épült, hogy az utolsó oszlopból visszafelé megkereshetőek az eredeti helyettesítési értékek, és ehhez valóban csak összeadásra van szükség.

A differenciagép elkészítése végül túlmutatott Babbage képességein. Tervei utólag tökéletesnek bizonyultak, a kor technikai színvonala azonban nem tette lehetővé a kivitelezést. Közben más gondolat is kezdte foglalkoztatni: egy, a differenciagépnél általánosabb eszköz kidolgozásába fogott, amelyhez nemcsak a bemenő adatokat, hanem a végrehajtandó műveleteket is meg lehet határozni. Az alapötletet Jacqard szövőszéke adta; a lyukkártya ugyanis kiválóan alkalmas volt bármilyen digitális (azaz számokkal megjeleníthető) információ tárolására. Babbage új analitikus gépében kétféle lyukkártyát használt: változó- és műveleti kártyákat. Az előbbiek hordozták a bemenő adatokat, míg az utóbbiak az ezeken elvégzendő műveleteket tartalmazták - egy adott képlet kiszámításához e két kártyacsomagra volt szükség. A program és az adatok tehát elkülönültek, így megszületett az első programozható számolóeszköz. Az analitikus gép további előremutató újításokat is tartalmazott: néhány értéket képes volt tárolni, és a tárolt adatot későbbi műveletekhez felhasználni.

Babbage 1833-ban kezdett hozzá az analitikus gép elkészítéséhez, ez lett volna élete főműve - ám a technika ismét közbeszólt. Tervei alapján 1871-ben bekövetkezett halála után fia még néhány évig folytatta a gép összeállítását, majd felhagyott a próbálkozással, és az addig elkészült darabokat a londoni természettudományi múzeumnak adományozta.

Ada Byron A gépről Babbage kiterjedt levelezést folytatott kortársaival, igyekezett minél több emberrel megismertetni és elfogadtatni merőben újszerű elképzelését. Egy alkalommal Augusta Ada Byron látogatta meg, azon kevés nők egyike, akik igen komolyan foglalkoztak a matematikával. Tanítómestere a jól ismert matematikus, Augustus de Morgan volt, az ő felesége révén került kapcsolatba Babbage-dzsel. Ada teljes egészében átlátta az analitikus gép működését, és ő alkotta - természetesen csak papíron - az első programokat is. Ada Byron volt tehát az első programozó, vagy ahogy akkoriban mondták, computer.

Ehhez a cikkhez nincsenek kapcsolódó anyagok.

Creative Commons License

Vissza a történetekhez