Charles Babbage A devonshire-i Teignmouthban született, s a cambridge-i Trinity College-ban tanult, ahol később Alan Turing is, majd a Peterhouse-ban folytatta tanulmányait. Cambridge-ben szerzett diplomát, 1814-ben. Abban az évben meg is házasodott, elvette Georgiana Whitmore-t. Nyolc gyerekük született, de csak három érte meg a felnőttkort. Mrs. Babbage 1827-ben hunyt el.A XIX. században Charles Babbage (1792.12.26-1871.10.18.) brit matematikus és feltaláló kidolgozta a modern digitális számítógép alapelveit.
Nem Babbage volt az első, aki számológépet készített – de a korábbi masinák inkább csak játékszerek voltak (Schickard, Pascal, Leibniz). A nyomtatóművel ellátott, a véges differenciák elvén működő számológép ötlete Johann Müllertől származik. Müller könyvének részleteit John Herschel fordította le Babbage-nek. Babbage munkáját viszont G. és E. Scheutz, valamint M. Wiberg folytatták Svédországban.
Charles Babbage igazi újításai az Analitikus Számolómű terveiben megfogalmazott számítási alapelvek voltak: a memória és aritmetikai egység, a programozhatóság, a lyukkártyák alkalmazása, feltételes elágazások a programok végrehajtásában, ciklusok, makrók valamint párhuzamos feldolgozás. Babbage mindhárom gépe decimális alapú volt. A berendezések tervezése és építése során Babbage a géptervezés és finommechanika területén is számottevő eredményeket ért el – könyvet is írt ebben a tárgykörben.
Több új típusú gépet is kigondolt. Ilyen volt a Difference Engine (differenciagép), amit logaritmustáblázatok készítésére tervezett az 1820-as évek elején. A gép a számolás eredményét a tervek szerint pontozóval közvetlenül a nyomda által használható fémlemezbe írta volna. A differenciagép bizonyos függvényértékek (négyzetek, harmadik hatványok, logaritmusok, stb.) sorozatának kiszámítását különbségek, differenciák összeadására vezeti vissza.
Például a négyzetszámok sorozatának előállításához azt használja ki, hogy a négyzetszámok másodrendű számtani sorozatot alkotnak:
(n+1)2=n2+n+(n+1)=n2+[(n-1)+n]+2=n2+[n2-(n-1)2]+2
Eszerint a következő négyzetszámot úgy kapjuk meg, hogy az előző négyzetszámhoz hozzáadjuk ennek és az őt megelőzőnek a különbségét (az úgynevezett első differenciát) és még 2-t, a második differenciát. Más függvényértékek kiszámításához több differenciát kell összeadni, de az elv hasonló: ha a sorozat előző eleme ismert, ebből a következőt bizonyos differenciák hozzáadásával lehet megkapni. Tehát minden függvényérték kiszámítását összeadásokra vezeti vissza.
Babbage gépe még a hatodik rendű differenciákat is használta. Ehhez hat, egymáshoz kapcsolódó számolóművet tervezett, mai ismereteink szerint hibátlanul. A gép 20 jegyű számokkal dolgozott volna. Babbage csak a gép egyes részeit tudta elkészíteni, a munkát azonban nem tudta befejezni: részben anyagi okok miatt, részben pedig a kor technikai lehetőségei nem voltak elegendőek. 1834-ben a differenciagép előállítási költségeit 17 470 fontra becsülték (egy gőzmozdony ugyanekkor 1000 fontba került).
Az első működő differenciagépet Babbage készülékének egyszerűsítésével 1853-ban készítette el Pehr Scheutz és fia, Edvard Scheutz. Ez a gép harmadrendű differenciákat és 15 jegyű számokat kezelt csak. Christel Hamann tovább tökéletesítette a berendezést, és segítségével 1910-ben tízjegyű logaritmustáblázatot jelentetett meg. Differenciagépeket egészen az 1940-es évekig használtak matematikai táblázatok készítésére.
A londoni Science Museumban 1991-ben Babbage részletes rajzai alapján megépítették az eredeti differenciagép egyszerűsített változatát korszerű anyagokból. A gép négyezer alkatrészből áll, méretei is tekintélyesek: 3,4 m × 0,5 m × 2,1 m. A berendezés tökéletesen működött: hibátlanul kiszámította a 7. hatványok táblázatának első száz értékét.
1833-ban a differenciagép elveinek továbbfejlesztésével tervezte meg Babbage az Analytical Engine-t (analitikus gépet). A gép elkészítéséhez a kormánytól kapott előlegként 17 000 font támogatást, de a saját tőkéjéből is ráköltött mintegy 20 000 fontot (más forrás szerint a támogatást nem az analitikus géphez, hanem a differenciagéphez kapta Babbage). A kormány 1842-ben, miután még mindig nem voltak látható eredmények, megvonta támogatását Babbage munkájától. (“Mi lenne, ha a gépet arra használnánk, hogy számolja ki, mikor fog működni?” — élcelődött Robert Peel miniszterelnök.) Ez a gép teljes egészében sohasem épült meg, pedig a modern számítógépek sok sajátságával rendelkezett. Babbage univerzális gépet tervezett, amely adatbeviteli és eredmény-kiviteli egységből, számolóműből és részeredmény-tárolóból állt volna. A gép lyukkártyákról olvasta volna be az információkat, tudott volna utasításokat és adatokat tárolni, matematikai műveleteket végrehajtani és adatokat kinyomtatni. Lyukkártyák vezérelték volna a tulajdonképpeni számítási folyamatokat is. Megjelent a feltételes vezérlésátadás ötlete: egy szám előjelének függvényében a gép kétféleképpen folytatta volna működését. A tárolómű 200 részeredmény tárolására lett volna alkalmas. Erre a célra 1000 db, egyenként 50 fogaskereket tartalmazó oszlopot tervezett Babbage. Haláláig ezen a gépen dolgozott, bár az építése már kezdetben megakadt: a kor finommechanikai lehetőségeivel ezt a gépet nem lehetett elkészíteni. Ha megépült volna, egy futballpálya területét foglalta volna el és öt gőzgép energiája kellett volna a működtetéséhez. A gép működési elvei miatt azonban sok történész Babbege-et és a munkatársát, Augusta Ada Byron (Augusta Ada Lovelace) matematikust (Lord Byron angol költő lányát) tartja a modern digitális számítógép igazi feltalálójának.
Egy olasz mérnök írt francia nyelvű beszámolót Babbage differenciagépéről. Ezt olvasta az akkor 27 éves Augusta Ada Lovelace. Fantáziát látott a számológépben, lefordította a beszámolót angolra és saját neve alatt publikálta a Scientific Memoirsban. A fordítást Babbage-nek is megmutatta, aki megkérdezte, hogy miért nem írt inkább egy eredeti cikket. Lady Lovelace erre elkészítette a cikk bővített, az eredetinél háromszor hosszabb változatát. Ebben kijavított néhány komoly hibát is, amit Babbage elkövetett. Írásában összehasonlítja a számológépet Jacquard 1801-es szövőszékével: “Ez algebrai mintákat sző, ugyanúgy, ahogy Jacquard szövőszéke virágokat és leveleket”. Ebből az ismeretségből aztán munkatársi viszony lett. Ada Lovelace javasolta Babbage-nak, hogy ne decimális, hanem bináris formában tárolja a számokat. Ugyancsak ő találta ki, hogy hogyan lehetne a géppel egy utasítás-sorozatot többször végrehajtatni. Ada Lovelace-ről nevezték el később az Ada programnyelvet.
Források