Charles Babbage (1791-1871) - en pioner inden for skabelsen af computerteknologi, som udviklede 2 klasser af computere - forskelligartede og analytiske. Den første af dem fik sit navn på grund af det matematiske princip, som den er baseret på - metoden med endelige forskelle. Dens skønhed ligger i dens eksklusive brug af aritmetisk addition uden at skulle ty til multiplikation og division, som er vanskelige at implementere mekanisk.
Mere end en lommeregner
Babbage's Difference Engine er et tælleapparat. Hun manipulerer tal på den eneste måde, hun kan, og lægger dem konstant sammen efter metoden med endelige forskelle. Det kan ikke bruges til generelle aritmetiske beregninger. Babbages analytiske motor er meget mere end blot en lommeregner. Det markerer overgangen fra mekaniseret aritmetik til fuldskala generel databehandling. På forskellige stadier af udviklingen af Babbages ideerder var mindst 3 projekter. Derfor omtales hans analytiske motorer bedst i flertal.
Bekvemmelighed og teknisk effektivitet
Babbages computere er decimaler i den forstand, at de bruger 10 cifre fra 0 til 9, og digitale ved, at de kun fungerer med hele tal. Værdier er repræsenteret af gear, og hvert ciffer har sit eget hjul. Hvis den stopper ved en mellemposition mellem heltalværdier, betragtes resultatet som ubestemt, og maskinen blokeres for at vise en krænkelse af beregningernes integritet. Dette er en form for fejldetektion.
Babbage overvejede også brugen af andre talsystemer end decimaler, herunder binære og grundtal 3, 4, 5, 12, 16 og 100. Han slog sig til på decimal på grund af dets fortrolighed og tekniske effektivitet, da det reducerer betydeligt antallet af bevægelige dele.
Difference Engine 1
I 1821 begyndte Babbage udviklingen med en mekanisme designet til at beregne og tabulere polynomielle funktioner. Forfatteren beskriver det som en anordning til automatisk at beregne en sekvens af værdier med automatisk udskrivning af resultaterne i form af en tabel. En integreret del af designet er en printer, der er mekanisk forbundet med beregningssektionen. Difference Engine 1 er det første komplette design til automatisk beregning.
Fra tid til anden ændrede Babbage enhedens funktionalitet. Et 1830-design viser en maskine designet til 16 cifre og 6 forskelle. Modellen bestod af 25 tusinde dele, fordelt ligeligt mellem computersektionen og printeren. Havde enheden været bygget, ville den have vejet anslået 4 tons og været 2,4 meter høj. Arbejdet på Babbage's Difference Engine blev standset i 1832 efter en strid med ingeniøren Joseph Clement. Regeringsfinansiering sluttede endelig i 1842
Analytisk motor
Da arbejdet med forskelsapparatet gik i stå, udtænkte Babbage i 1834 en mere ambitiøs enhed, som senere blev kendt som Analytical Universal Programmable Computing Engine. Babbages maskines strukturelle egenskaber svarer stort set til de grundlæggende byggesten i en moderne digital computer. Programmering udføres ved hjælp af hulkort. Denne idé er taget fra jacquardvæven, hvor de bruges til at skabe komplekse tekstilmønstre.
Den logiske struktur af Babbage's Analytical Engine svarer grundlæggende til det dominerende design af computere i den elektroniske tidsalder, hvilket indebærer tilstedeværelsen af hukommelse ("lager"), adskilt fra den centrale behandlingsenhed ("mølle"), sekventiel udførelse af operationer og faciliteter til input og output af data og instruktioner. Derfor modtog forfatteren til udviklingen titlen som pioner inden for computerteknologi ganske fortjent.
Hukommelse og CPU
Babbages maskine har et "lager", hvor tal og mellemresultater gemmes, samt en separat "mølle", hvor der udføres aritmetisk behandling. Hun havde et sæt af 4 aritmetiske funktioner og kunne udføre direkte multiplikation og division. Derudover var enheden i stand til at udføre operationer, der nu kaldes betinget forgrening, loop (iteration), mikroprogrammering, parallel behandling, fiksering, pulsformning osv. Forfatteren selv brugte ikke en sådan terminologi.
CPU'en i Charles Babbages analytiske motor, som han kaldte "møllen", giver:
- lagring af numre, som udføres med det samme, i registre;
- har hardwaren til at udføre grundlæggende aritmetiske operationer på dem;
- overførsel af brugerorienterede eksterne instruktioner til detaljeret intern kontrol;
- timing system (ur) til at udføre instruktioner i en nøje udvalgt sekvens.
Kontrolmekanismen i den analytiske motor udfører operationer automatisk og består af to dele: et lavere niveau styret af massive trommer kaldet tønder, og et højt niveau ved hjælp af hulkort designet af Jacquard til væve, der var meget brugt i begyndelsen af 1800-tallet.
Outputenheder
Resultatet af beregninger vises på en række forskellige måder, herunder udskrivning, hulkort, plotning ogautomatisk produktion af stereotyper - bløde materialebakker, hvorpå resultatet er præget, i stand til at tjene som en form til støbning af plader til tryk.
Nyt design
Babbages banebrydende arbejde med den analytiske motor blev stort set afsluttet i 1840 og begyndte at udvikle en ny enhed. Mellem 1847 og 1849 færdiggjorde han udviklingen af Difference Engine nr. 2, som var en forbedret version af originalen. Denne modifikation blev designet til operationer med 31-bit tal og kunne tabulere ethvert polynomium af 7. orden. Designet var udsøgt enkelt og krævede kun en tredjedel af den originale models delantal, samtidig med at det gav samme processorkraft.
Charles Babbages forskelle og analytiske motorer brugte det samme design af outputenheden, som ikke kun lavede udskrifter på papir, men også automatisk skabte stereotyper og selvstændigt udførte formatering i henhold til sidelayoutet specificeret af operatøren. Samtidig var det muligt at justere linjehøjde, antal kolonner, feltbredder, automatisk foldning af rækker eller kolonner og opstilling af tomme linjer for læsbarhed.
Legacy
Bortset fra nogle få delvist skabte mekaniske samlinger og testmodeller af små arbejdssektioner, blev ingen af designerne fuldt ud realiseret i Babbages levetid. Hovedmodellen samlet i 1832 var 1/7 af Difference Engine nr. 1, som bestodfra omkring 2 tusinde dele. Den fungerer upåklageligt den dag i dag og er den første vellykkede automatiske computerenhed, der implementerer matematiske beregninger i en mekanisme. Babbage døde, mens den lille eksperimentelle del af den analytiske motor blev samlet. Mange detaljer om konstruktionen er bevaret, samt et komplet arkiv af tegninger og noter.
Babbages design til enorme mekaniske computere betragtes som en af de fantastiske intellektuelle bedrifter i det 19. århundrede. Det er først i de seneste årtier, at hans arbejde er blevet studeret i detaljer, og vigtigheden af det, han har gjort, bliver mere og mere tydelig.