Niet van gisteren

Niet van gisteren

Introductie

serviceName=vimeo&width=&height=&videoId=399231035&loop=0&autoplay=0&fullscreen=0&info=0

Programmeerbare doosjes

In de vierkantshoeve van mijn ouders was de zolder een van mijn favoriete plaatsen om even aan de dagelijkse werkelijkheid te ontsnappen. Het stof op de vermolmde vloer dwarrelde slechts één keer per jaar omhoog als mijn moeder haar jaarlijkse grote schoonmaak begon. Ik voelde me meer aangetrokken tot de geheimen die het stof als een afgedragen mantel bedekte. Op een van die zoektochten vond ik daar, aangetast door de spreekwoordelijke tand des tijds, een zwart houten doosje met binnenin iets wat op een blaasbalg leek en daarbij een reeks geponste platen, vermoedelijk van tin of messing. De platen hielden het midden tussen een gewone vinyl-lp en -single. Rond de opening in het midden stonden namen als ‘mazurka’ en ‘wals’.
Geponste platen van een muziekdoos  

Ponsplaten bevatten gecodeerde muziek

De muziekdoos die ik had gevonden (of wat er nog van overbleef) vertoonde ondanks zijn overduidelijke verschillen ook wel wat gelijkenissen met de ondertussen naar technische normen al bejaarde cd-speler. Terwijl bij een audio-cd de muziek vastligt in minuscule kleine putjes en bij een vinylplaat in langgerekte groeven, is de muziek hier gecodeerd in langgerekte gaten waardoorheen de lucht van de blaasbalg kan ontsnappen.

Het geheel werd manueel aangedreven met een zwengel, die zowel de plaat aan het draaien bracht als de ingesloten blaasbalg op en neer liet bewegen. Het deed denken aan de 19e-eeuwse draaiorgels waar de ponsgaten niet in schijven, maar in opgevouwen rechthoekige platen zijn aangebracht.

De ponsplaten bevatten geen geluidsopnames of geluidendie naar analogie met de werkelijkheid zijn geregistreerd. Toch is de muziek hier net zoals bij een cd in gecodeerde vormvastgelegd. Enkel een toestel dat weet hoe het de informatie moet decoderen, kan de muziek weergeven. 

De ponsplaat van mijn muziekdoos.

Van ponsplaat tot digitale informatie

Hoe kan je muziek of andere informatie coderen? Misschien heb je er nog nooit bewust bij stilgestaan. Maar hoe kan een modern computersysteem zoals je laptop of smartphone foto's, tekst en geluid in code opslaan? 

In wezen kennen de moderne opslagtechnieken zoals harde schijven en geheugens hun directe voorlopers in de ponskaartsystemen. Wie de digitale evolutie al wat langer heeft mogen meemaken, heeft ze wellicht nog gekend: computersystemen die hun gegevens uit ponskaarten uitlazen en hun gegevens ook op die manier bewaarden. 

serviceName=youtube&width=&height=&style=&videoId=YXE6HjN8heg&related=0&autoplay=0&loop=0&info=0&fullscreen=0&noCookie=0  

De ponskaarttechniek voor het bewaren van gegevens is niet nieuw, daarover later meer. Jacquardweefgetouwenwaren de eerste werktuigen die op industriële wijze werden ingezet om menselijke arbeid (het weven van "patronen" en figuren) te automatiseren. De gaten in de ponskaarten wezen de machine aan hoe en waar een naaldeen steek kon zetten. 

serviceName=youtube&width=&height=&style=&videoId=MQzpLLhN0fY&related=0&autoplay=0&loop=0&info=0&fullscreen=0&noCookie=0

De gaten in de ponskaarten gaven de "plaats" aan waar de steek diende te komen. De codering is met andere woorden "locatie-gebaseerd". De ponsschijven van de muziekdoos, werkten op gelijkaardige wijze. Elk 'gat' geeft aan waar een pin kan doorspringen. Als de pin door een bepaald gat springt, produceerde de muziektoon een corresponderende toon. 

Gaatjes in een CD-schijf. Bron:  https://www.researchgate.net/figure/Visualization-of-the-tracks-of-pits-on-the-metalized-CD-data-surface-by-use-of-a-scanning_fig1_228423286

Bij een audio-CD zijn de gaatjes vervangen door kleine putjes, maar het principe blijft hetzelfde: codering van informatie. De manier waarop die codering verloopt, is echter compleet anders. De codering is digitaal

Digitus. Van het Proto-indo-Europees *deyǵ-, wat 'aanwijzen' betekent. Latijn: digitus = vinger. Dus: tellen met de vingers.

Alle informatie is opgeslagen in de vorm van getallen. Niet in decimale getallen zoals we allemaal gewend zijn, maar in binaire getallen. Binaire getallen kennen maar twee verschillende karakters: een 0 en een 1. Een putje vertegenwoordigt een 1 (of een 0), geen 'putje' betekent een 0 (of een 1).

Hoe kan een audio-CD muziek of geluid volledig coderen in nullen en enen? Meer nog, alle vormen van digitale informatie zijn binair gecodeerd. Alles wat je nu voor je ziet op je computerscherm, bestaat in wezen (voor het toestel voor je) enkel uit nullen en enen. Hoe kan een computersysteem alle denkbare informatie 'digitaliseren'?

Informatie digitaliseren

We bekijken drie soorten gegevens: tekst, foto's/film en geluid. Hoe kan een computersysteem die drie vormen van informatie digitaal coderen. Bovendien: hoe kan je die informatie coderen in getallen die enkel nullen en enen bevatten? En waarom enkel nullen en enen? 

Schakelaars

Laat ons starten met die laatste vraag. Een computer werkt op elektriciteit. Elektrische spanning kan aan (1) of uit (0) staan. Neem de verlichtingsschakelaars bij je thuis als voorbeeld. Druk je ze in, dan gaat het licht branden. Druk je nogmaals, dan gaat het weer uit. De schakelkast lijkt echter wat meer op je computer. Daar zitten al wat meer schakelaars in. Een moderne computerprocessor bevat miljoenen, zo niet miljarden van die schakelaars die je aan en uit kan zetten. 

Wanneer je schakelaars combineert, kan je logische schakelingen maken. Bijvoorbeeld: als je twee schakelaars aanzet (allebei op 1), dan levert dat als uitkomst eveneens een 1 op. In dat geval bepaal je dat de ene EN (AND) de andere aan moet staan om als eindresultaat een 1 te krijgen. Maar je zou ook kunnen zeggen dat de ene of (OR) de andere moet aan staan om als eindresultaat een 1 te krijgen. Kortom: een programmeur bepaalt wat er moet gebeuren als één of meer schakelaars aan of uit staan. Opgelet: die uitleg is wat kort door de bocht, maar het komt er in principe wel op neer.

Nullen en enen

Digitale computersystemen snappen door hun architectuur dus enkel aan (1)- en uit (0)-posities en combinaties daarvan. Willen we gegevens in computers invoeren, dan zullen we die eerst moeten converteren naar combinaties van nullen en enen. 

De tekst die je hier leest, is door het computersysteem vertaald naar nullen en enen. Wat jij nu leest, is het resultaat van weerom een andere vertaalslag: de computer heeft de opgeslagen nullen en enen omgezet naar pixels op je beeldscherm. Een '1' op je beeldscherm bestaat uit een reeks kleine 'lampjes' ( picture elements= pixels) die uitgezet zijn (ze zijn zwart). De witte achtergrond achter deze letters zijn lampjes die evenveel waardes toekennen aan rood als aan blauw en groen. Het resultaat van die combinatie levert wit licht op. Vreemd, nietwaar? Maar dat is wat er zich op dit moment voor je ogen afspeelt.

Tekst coderen

Elke toets op een toetsenbord krijgt een bepaald getal toegewezen. Een hoofdletter A bijvoorbeeld, krijgt het getal 65 toegewezen. Op die manier correspondeert elke toets met een bepaald decimaal getal. Druk je op de spatiebalk, dan ontvangt je computer intern het decimale getal 32 als signaal. Die toewijzing van toetsen aan decimale getallen is gestandaardiseerd. Alle soorten toetsenborden (azerty, querty, touchscreen-toetsenborden...) maken dezelfde gestandaardiseerde vertaalslag.  

Die standaardtechniek draagt de naam ASCIIAmerican Standard for Information Interchange). Hij kent echter een beperking, zoals de afkorting eigenlijk al aangeeft. Van oorsprong gaat het om een Amerikaanse standaard en kent hij bijgevolg enkel symbolen die door Amerikanen gebruikt worden. Om die reden is de techniek uitgebreid met andere (vooral niet-westerse) symbolen om hem wereldwijd bruikbaar te maken. Hij draagt nu de naam UTF-8Unicode Transformation Format).

De ASCII-tabel

Samengevat komt het op het volgende neer:

  1. Jij tikt een toets op je toetsenbord in.
  2. De toets correspondeert met een decimaal getal.
  3. De computer vertaalt het decimale getal naar een binair getal.

De Romeinen deden het ook al

Visualisatie van Romeinse langeafstandscommunicatie.

Het idee om het alfabet te converteren naar een tabel was zeker niet nieuw.  Cleoxenus en Democleitus bedachten een methode die verder werd uitgewerkt door Polybius, waardoor de communicatie op lange afstand aanzienlijk verbeterde. Ze gebruikten combinaties van fakkels, vastgemaakt aan panelen. Elke combinatie van fakkels vertegenwoordigde een bepaalde letter uit het alfabet. Daarvoor werden twee (houten?) panelen opgesteld. Elk paneel was voorzien van houders voor maximaal vijf fakkels. Dit gaf een totaal van 25 mogelijke combinaties, wat ongeveer overeenkwam met  het aantal letters in het Griekse alfabet. 

Naar analogie kunnen we dat vergelijken met de werking van een kruiswoordraadsel. Het eerste paneel staat dan voor de horizontale cijfers in het raster, het tweede (rechtse) paneel voor de verticale cijfers in het raster. Twee fakkels op het linkerpaneel en vijf fakkels op het rechterpaneel stonden voor de letter k. 

De vergelijking met een kruiswoordraadsel doet een beetje afbreuk aan de inventiviteit van deze vondst. De zender ‘scant’ een tweedimensionale rij van lettertekens. Hij verzendt informatie over de positie van elk element in een raster. Het roept vergelijkingen op met de methodes die televisies en faxtoestellen gebruiken om afbeeldingen te scannen en te verzenden. Het doet ook denken aan de ‘discretisatie’ bij het digitaliseren van afbeeldingen, die later nog aan bod komt. 

Moderne visualisatie van de tweedimensionale toewijzing van het alfabet aan getallen.

Polybius raadde ontvangers aan een stenoscoop te gebruiken, een soort kijkbuis met twee trechters waardoor je de ogen beter kon fixeren. (De telescoop was nog niet uitgevonden. De 11e-eeuwse Arabische wetenschapper Alhazen experimenteerde met parabolische spiegels en vergrootglazen. Zijn werk werd in 1572 in het Latijn vertaald en leidde mee tot de ontwikkeling van de telescoop waarmee Galilei beroemd werd.) Een stenoscoop had ook zijn beperkingen, want hij vergrootte het beeld niet. Over een afstand van meer dan één kilometer waren de verschillende fakkels nauwelijks van elkaar te onderscheiden. Bovendien waren er aan de verzendpost heel wat mensen nodig om de fakkels snel te kunnen plaatsen en verplaatsen. Er zijn geen bewijzen voor gevonden dat dit systeem voor communicatie ooit in praktijk is gebracht.

Sextus Julius Africanus (232–290) beschreef een vergelijkbare Romeinse methode om teksten te verzenden met behulp van vuursignalen. Hierbij splitste men het alfabet in drie kolommen op:

"De Romeinen gebruiken een systeem, een zeer opmerkelijk naar mijn mening, om elkaar allerlei dingen te vertellen met behulp van vuursignalen. Ze verdelen de plaatsen voor het seinen op zo’n manier dat ze velden hebben in het midden, rechts en links. Dan verdelen ze de letters op zo’n manier dat alpha tot theta hun plaats krijgen aan de linkerkant, die van iota tot pi in het midden, en die van rho tot psi aan de rechterkant. Als ze bijvoorbeeld de letter rho willen zenden, dan steken ze één fakkel in de lucht aan de rechterkant, voor sigma twee (...). De ontvangers schrijven de letters op in de vorm van vuursignalen en verzenden het naar het volgende station, dat het op zijn beurt doorstuurt naar het volgende en zo verder tot het laatste station is bereikt."

Uiteraard gaat het niet om dezelfde techniek, maar de principes lijken op elkaar. 

  1. De ASCII-tabel koppelt "letters" aan getallen.
  2. De Romeinen kennen aan elke letter een X- en Y-positie in een tabel toe. Wiskundig gezien zouden we kunnen spreken van een tweedimensionale vectorruimte.

Afbeeldingen digitaliseren

Hoe kan een digitaal computersysteem een afbeelding vertalen naar binaire getallen? Het is veel eenvoudiger dan het lijkt. 

Een digitale camera of scanner verdeelt een beeld van de werkelijkheid in rijen en kolommen, alsof je een transparant kruiswoordraadsel voor je ogen zou houden. Elk vakje in zo'n tabel noemen we een pixel. Voor elke pixel meet het systeem de kleurwaarde. Valt er op een pixel helemaal geen licht, dan is de pixel zwart of gewoonweg 0. 

Ongetwijfeld weet je dat je wit licht kan splitsen in alle kleuren van de regenboog en dat je kleuren kan bekomen door ze te mengen. De drie basiskleuren die je bij elkaar kan 'optellen' (additieve kleuren), zijn ROOD (red), GROEN (green) en BLAUW (blue). Bij schermen spreekt men daarom van RGB-kleuren. Voeg je die drie basiskleuren in hun maximumhoeveelheid bij elkaar, dan krijg je opnieuw wit. Op een computersysteem stelt men die maximumwaarde gelijk aan 255. 

R = 255, G = 255 en B = 255 levert wit op. Zet je de drie waarden op 0, dan resulteert het in een zwarte pixel. De waarde kan dus per basiskleur variëren tussen 0 en 255. Voor elke basiskleur levert dit met andere woorden 256 verschillende mogelijkheden op. Door die hoeveelheden in meer of mindere mate met elkaar te mengen, kan je 16.777.216 verschillende kleurcombinatie bekomen. Dat zijn er behoorlijk wat. 

serviceName=vimeo&width=&height=&videoId=399608140&loop=0&autoplay=0&fullscreen=0&info=0

Samengevat: 

  1. Een digitaal systeem legt een 'raster' (met x aantal kolommen en y aantal rijen) over een afbeelding. Elk vakje in zo'n raster is een pixel. 
  2. Voor elke pixel wordt de waarde voor de drie basiskleuren gemeten.
  3. Voor elke pixel "onthoudt" de computer 5 cijfergegevens: de X-positie in het raster, de Y-positie in het raster, de waarde voor ROOD, de waarde voor GROEN en de waarde voor BLAUW.
  4. De computer zet die 5 getallen om in binaire getallen.

Russell Kirsch

RGB en pixels... niets nieuws onder de zon

Het RGB-kleursysteem bestaat al van midden 19e eeuw. Het is gebaseerd op theorieën van fysici als Thomas Young, Hermann Helmholtz en James Maxwell.

Russell Kirschgeldt als de uitvinder van de vierkante pixel. In de jaren vijftig maakte hij deel uit van een team dat de vierkante pixel ontwikkelde. 

"Vierkanten waren de meest logische keuze", zegt Kirsch. "Natuurlijk was het niet de enige mogelijkheid, maar we gebruikten vierkanten. Het was iets heel dwaas waar iedereen in de wereld sindsdien aan lijdt."

Kirsch probeert om zijn 'fout' goed te maken. Geïnspireerd door de mozaïekbouwers uit de oudheiddie scènes met verbluffende details hebben geconstrueerd met stukjes tegel, schreef Kirsch een programma dat de dikke, onhandige vierkanten van een digitaal beeld verandert in een vloeiender beeld gevormd door variabel gevormde pixels.

serviceName=vimeo&width=&height=&videoId=22179638&loop=0&autoplay=0&fullscreen=0&info=0

Van geluid naar getal

Blijft de laatste vraag: hoe kan je geluid, of het nu om muziek gaat of om een stem, omzetten in getallen? 

Geluid zijn trillingen in de lucht. Geluid verspreidt zich als een golf. Hoe meer golfjes in een bepaalde tijd (hogere frequentie), hoe hoger de toon. Hoe hoger de golf, hoe hoger het volume. Een hoge golf doet met andere woorden meer pijn aan de oren. 

Bij het digitaliseren van geluid meet het systeem het aantal golfjes in een bepaalde tijd en van elk golfje meet het eveneens de hoogte. De meetresultaten zijn dus ook hier getallen. De rest laat zich al raden: de computer vertaalt de decimale meetresultaten naar binaire getallen... Hoe meer metingen per tijdseenheid, hoe nauwkeuriger het resultaat. Het heeft immers geen zin maar één enkele meting per seconde te doen. Op die manier zou je het geluid niet meer kunnen weergeven. Het geluid van een audio-cd bevat niet minder dan 44.100 metingen per seconde. Dat zijn er behoorlijk wat.

Geluidsopnames waren lange tijd analoog, wat betekent dat ze het geluid echt registreerden als een golf en niet als een verkapt digitaal signaal. Een LP of grammofoonplaat is niet digitaal. De plaat bevat anders dan een ponsplaat en een CD geen gaatjes of putjes maar "bergen en dalen" waarover de naald glijdt. Het geluid is letterlijk naar ANALOGIE met de werkelijkheid geregistreerd. Daarom gebruikt men voor zulke opname de benaming analoog .

Het mag gezegd: geluidsopnames kwamen later dan de microfoon en de luidspreker. De eerste praktische toepassing van de microfoon en de luidspreker, was de telefoon, die eerder per toeval werd ontdekt door Graham Bell. 

De eerste bruikbare telefoon kwam van Alexander Graham Bell (1847– 1922), die de juiste techniek eerder per toeval ontdekte. Bell was niet voor niets gefascineerd door de menselijke stem, want hij was actief als leraar in het doofstommenonderwijs. Hij wilde de menselijke stem ‘zichtbaar’ maken voor doofstommen. Hij bouwde een fonautograaf zoals in 1857 al door de Fransman Léon Scott de Martinville (1817–1879) was beschreven. Hij liet een zijwaarts bewegende roterende en met roet bedekte cilinder ronddraaien. Daarvoor plaatste hij een stift die aan het andere uiteinde op een vlies was geplakt. Wanneer je ertegen sprak, trilde de stift en trok hij een zichtbaar spoor in het roet. Bell meende dat doofstommen zouden kunnen leren dit spoor af te lezen. Hij bedacht dat het mogelijk moest zijn het geluid met perslucht weer te geven als hij de stift in de cilinder een spoor zou kunnen laten snijden. Toch ging hij niet verder in op dit idee, dat korte tijd later door Thomas Alva Edison zou worden uitgewerkt in de fonograaf. Bell wilde al zijn tijd steken in een harmonische telegraaf waarmee je meerdere signalen simultaan over één lijn zou kunnen sturen. Hij demonstreerde dat maar al te graag door tonen te zingen gericht naar de snaren van een piano. Bij elke geproduceerde toon gingen niet één, maar meerdere snaren aan het trillen. Op zoek naar een praktische realisatie, ontdekte hij eerder per toeval de telefoon. Een stalen veer die tegen de magneetspoel van de telegraafzender werd aangedrukt, veroorzaakte een wisselend magnetisch veld en dat was als een zoemtoon te horen op de ontvangpost. Bell en Thomas Augustus Watson (1854–1934) gingen meteen aan de slag en ontwikkelden een microfoon/luidspreker met een membraan en een trillende veer. Net zoals bij Reis was de menselijke stem moeilijk verstaanbaar. In 1876 verkreeg hij een octrooi op de harmonische telegraaf en op de speaking telegraph, ook al was die ver van voltooid of bruikbaar. Een vloeistofmicrofoon waarin een geleidende vloeistof ervoor zorgde dat de weerstand wijzigde als de naald dieper of minder diep in de vloeistof werd gedompeld, bracht enige verbetering. Op 10 maart 1876 was het hek van de dam. Bell schreef over die dag in zijn aantekeningen: ‘Ik schreeuwde (...) de volgende zin: “Mr. Watson, come here. I want to see you.” Tot mijn vreugde kwam hij en verklaarde dat hij gehoord en verstaan had wat ik zei. Ik vroeg hem de woorden te herhalen. Hij antwoordde: “You said: Mr. Watson, come here. I want to see you.”’ In 1876 vierde de VS zijn honderdjarige onafhankelijkheid. Voor Bell was het een unieke gelegenheid om zijn uitvinding te presenteren op de ‘Centennial Exhibition’ in Philadelphia. Ook al had hij maar een klein standje op deze voorstelling, toch wist hij het enthousiasme te wekken van onder meer William Thomson (1824–1907) en de eveneens aanwezige Dom Pedro II, keizer van Brazilië (1825–1891). De telefoon werd een grandioos succesverhaal en de door Bell opgerichte Bell Telephone Company was een regelrecht schot in de roos. De eerste stap was gezet: geluid kon worden omgezet in elektriciteit en weer omgezet in luchttrillingen.

Eerst kwam de fonograaf

Het was de beroemde Edison die, tot spijt van de Fransman Charles Cros, geluid wist vast te leggen in een mechanisch geheugen, de fonograaf. In 1878 gaf Edison zijn plannen voor de fonograaf aan zijn instrumentenbouwer. Het principe was wederom even simpel als geniaal. Een naald die aan een trillend membraan was bevestigd, kraste groeven in een met tinfolie bedekte wassen cilinder die op een metalen cilinder draaide. De opnamekwaliteit was aanzienlijk verbeterd door zijn koolweerstandmicrofoon. Het geluid kon nadien opnieuw worden weergegeven door een naald tegen de roterende cilinder te plaatsen. De trillingen van de naald werden versterkt door een hoorn. De toestellen beschikten over een mechanische motor die met een zwengel werd aangedreven. De weergavesnelheid hing dus in eerste instantie ook af van de snelheid waarmee aan de zwengel werd gedraaid.

Edison zag verschillende doelpublieken. Vooreerst had de zakelijke wereld er baat bij. Tot nog toe werden nota’s in steno, een soort verkort schrift, genoteerd. Nu kon een vergadering of afspraak worden opgenomen en nadien weer beluisterd en/of genoteerd. Met dit doel voor ogen bouwde hij voor de professionele markt de dictafoon. Daarnaast startte hij de productie van speelgoedpoppen die konden spreken door een ingebouwde kleine fonograaf. Groot probleem was dat de wassen cilinders maar een beperkte levensduur hadden en hun kwaliteit snel verloren. Een beter alternatief was dus noodzakelijk. Het zou bovendien nog jaren duren voordat men erin slaagde om de opgenomen rollen te vermenigvuldigen.

"Na de enregistratie worden de dikke, positieve (ingegroefde) wasplaten door middel van electrische stroomingen gegalvaniseerd. Men bekomt aldus een negatief afdruksel (de ingegroefde lijnen zijn nu hobbelig geworden). Van deze plaat worden nieuwe afgegoten, waarmede men de platen, voor den handel bestemd, afdrukt." (Van Iseghem)

Emile Berliner (1851–1929) zou de cilinder vervangen door een draaiende schijf en kwam tot de grammofoon (in Amerika phonograph), die tot in onze tijd in gebruik is en de voorloper kan worden genoemd van de digitale cd ( compact disc), dvd ( digital versatile disc) en bd ( bluray-disc).

De fonograaf van Edison en wassen rollen met geluidsopnames (collectie van de auteur)  

Dan blijft de laatste vraag. Hoe kan je om het even welk getal schrijven door enkel nullen en enen te gebruiken? Ga naar de volgende pagina...

Getallen schrijven met 2, 10 of 16 symbolen

In de vorige les hebben we al uitgelegd hoe en waarom een digitaal systeem alle informatie vertaalt naar nullen en enen. Maar hoe kan je getallen schrijven door enkel gebruik te maken van twee symbolen, 0 en 1?

Ook al is wiskunde niet meteen je ding of baal je van cijfers, toch kan je allemaal in zekere zin wel met getallen en cijfers overweg. Doorgaans rekenen we in het tiendelig talstelsel en dat is niet ongewoon. Het heeft te maken met het feit dat we tien vingers en tien tenen hebben. Al onze eenheden zijn machten van 10. Een eeuw telt bijvoorbeeld 100 jaar of meer bepaald 10 tot de macht 2 (10*10=100). 

1000 komt overeen met 10 tot de derde macht of 10*10*10.

Het decimale talstelsel maakt gebruik van tien  verschillende symbolenwaarmee je om het even welk getal kan schrijven: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Dat moet echter niet zo zijn. Het binaire talstelselmaakt gebruik van slechts twee symbolen, namelijk 0 en 1. Het hexadecimale talstelseltelt 16 verschillende symbolen: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E en F. F staat in het hexadecimaal systeem voor 15.

Schrijven van rechts naar links

Bij getallen bepaalt de plaats van het cijfer de macht die je er aan toewijst. Het getal 92 is op de onderstaande manier samengesteld/geteld:

9 2
9 maal 10 tot de eerste macht 2 maal 10 tot de 0de macht.
9*10=90 2*1=2

123 reken je op de volgende manier:

1 2 3
1 maal 10 tot de tweede macht 2 maal 10 tot de eerste macht 3 maal 10 tot de 0de macht
1*(10*10)=100 2*10=20 3*1=3

Getallen lezen we op die manier van rechts naar links. Helemaal rechts zien we als positie 0 (de 0de macht). Elke stap die we naar LINKS zetten, verhoogt de macht met 1.

... 3 2 1
... macht 3 macht 2 macht 1 macht 0

In het tiendelig of decimaal stelsel kan je aan de factor 10 dus de macht 'n' toe. En 'n' verhoog je met 1 telkens je een stap naar links zet.

Positie van cijfer in getal (van rechts naar links) ... 2 1
macht of exponent 'n'. ... macht 2 macht 1 macht 0
factor decimaal ... 10 2 10 1 10
factor hexadecimaal ... 16 2 16 1 16
factor binair ... 2 1 2

Het binaire getalsysteem

Het binaire talstelsel is een tweedelig talstelsel. Dat wil zeggen dat het systeem slechts twee symbolen gebruikt voor de weergave van alle getallen. Je weet het al: die twee symbolen zijn 0 en 1. 

Dat betekent dat we alle getallen schrijven met een combinatie van die twee symbolen 0 en 1. Een nul schrijven we gewoon als 0 en een 1 als 1, maar voor alle andere getallen ziet de combinatie er iets ingewikkelder uit. 123 schrijven we bijvoorbeeld als 1111011. Meestal zal je voor 123 de waarde 01111011 zien gebruiken en voor 1 schrijft men 00000001. Dat komt omdat men in binaire computersystemen gebruik maakt van groepjes van 8 tekens: één teken noemt men een bit, een groepje van acht bits, noemt men een byte.

Dat is een gewoonte, want men zou evengoed groepjes van zeven bits of drie bits kunnen gebruiken. Met een byte (acht bits) kan je 256 verschillende combinaties bouwen met enen en nullen. Dat is ongeveer de combinatie die je nodig hebt om alle symbolen op een standaard toetsenbord een getal toe te kennen.


14 schrijven we binair als 00001110. Hoe komen we aan die combinatie? Het principe is precies hetzelfde als bij decimale en hexadecimale getallen. Getallen lezen we van rechts naar links. Helemaal rechts zien we als positie 0 (de 0de macht). Elke stap die we naar links zetten, verhoogt de macht met 1.

... 3 2 1
... macht 3 macht 2 macht 1 macht 0
Binair getal 1 1 1
macht 0*2 7 0*2 6 0*2 5 0*2 4 1*2 3 1*2 2 1*2 1 0*2
totaal 8 4 2

8 + 4 + 2 = 14 

Wie bedacht het binaire systeem?

George Boole

Het binaire systeem werd bedacht door de wiskundige en filosoof Gottfried Wilhelm Leibniz(1646– 1716), een tijdgenoot van het onovertroffen genie Isaac Newton (1643–1727). In zijn tijd zag niemand het nut in van zo’n binair talstelsel en hijzelf gebruikte het vermoedelijk enkel in filosofische discussies over godsdienst: de 1 zou daarbij staan voor het bestaan van God en de 0 voor de afwezigheid van God. 

Andere vondsten van Leibniz, zoals het ‘is gelijk aan’-teken (=) of de dubbele punt bij delingen (:), raakten wel ingeburgerd. Het binaire getalsysteem werd in de eerste helft van de 20e eeuw dankbaar opgevist voor gebruik in de eerste digitale computers.

George Boole(Lincoln, 2 november 1815 - Ballintemple Cork, 8 december 1864) was een Brits wiskundige en logicus. Hij bedacht de naar hem genoemde booleaanse logica, die samen met het binaire getalsysteem de basis zou leggen voor de digitale computerlogica. De door hem bedachte logische operatoren zoals AND, OR en NOT, voor het bouwen van schakelingen, vormen niet alleen de basis van de moderne computerlogica, maar ook voor de elektronica. Elk kind krijgt op school vroeg of laat lessen over logische poorten en schakelingen. 

Hebben je kinderen of kleinkinderen het er moeilijk mee? Dan kunnen ze George Boole met de vinger wijzen.

Is hiermee alles gezegd over de geschiedenis van de "computer"?

De reeds eerder genoemde ponsplaten bevatten echter eveneens gecodeerde informatie. Ook al gebruikten ze nog geen binair talstelsel of booleaanse logica, toch waren ze behoorlijk inventief. Niettemin was de techniek van het werken met pinnen en gaten een belangrijk onderdeel van de geschiedenis van automaten, robots en computers...

Programmeren in de oudheid

Programmeurs programmeren computers al lang niet meer in nullen en enen. Om het programmeren te vergemakkelijken, hebben we programmeertalen bedacht. Die talen bevatten korte instructies en maken gebruiken van haakjes, akkolades en leestekens waardoor veel mensen denken dat je een wiskundige knobbel moet hebben om goed te kunnen programmeren. Onderzoek heeft echter uitgewezen dat je als programmeur meer hebt aan een taalknobbel. Je leert namelijk een taal met haar eigen spelling- en spraakkunstregels.

Programmeren doe je niet in nullen en enen

Ada Lovelace was met haar Algorithm for the Analytical Engine voor de analytische machine van Charles Babbage de eerste om een soort programmeertaal te bedenken.  De eerste hogere programmeertaal ter wereld werd bedacht door de Duitser Konrad Zuse tussen 1943 en 1945. Hij noemde zijn taal Plankalkül . 

"Vanwege de gaande Tweede Wereldoorlog en de commercialisering van Zuses Z3-computer werd de programmeertaal niet toen uitgebracht. Tegen 1946 had Zuse er een boek over geschreven dat niet gepubliceerd werd. In 1948 publiceerde hij wel een paper dat evenwel weinig aandacht kreeg. Hierdoor zou computerprogrammering nog lange tijd gezien worden als een zaak van machinecode. Pas in 1972 werd wijder over Plankalkül gepubliceerd. In 2000, vijf jaar nadat Zuse was overleden, werd de eerste Plankalkül-compiler geschreven door de Vrije Universiteit Berlijn. "(Bron: Wikipedia).

Ook al kreeg Plankalkül geen aandacht, de eerlijkheid gebiedt haar de eerste plaats te geven in de annalen. De taal is daarmee ouder dan het nog steeds gebruikte   Assembly(1949), het vergeten Autocode (1952), Fortran(1957), Algol (1958) en Cobol(1959). Het bijzonder populaire BASICkent zijn oorsprong in 1964. Pascaldateert uit 1970, twee jaar later gevolgd door Smalltalk. Bepaalde concepten van deze laatste taal duiken nog steeds op in populaire talen uit onze tijd zoals JAVA, Python en Ruby. 

Eén van de belangrijkste en meest invloedrijke programmeertalen was C (1972). Bekende besturingssystemen zoals Linux, Mac OS en Windows zijn in de taal C geprogrammeerd. De spraakkunst van die taal beïnvloedde tientallen andere talen. Talen werden leesbaarder waardoor de toegankelijkheid enorm werd verhoogd. Sommige talen raakten hierdoor wijd verbreid. Bekend voorbeeld is SQL, een taal om informatie uit databanken op te vragen en te bewerken.

Om een taal bruikbaar te maken, moet ze nadat de programmeur zijn werk heeft gedaan, nog worden vertaald in machinetaal, namelijk in nullen en enen. Dat vertaalproces gebeurt met een stuk vertaalsoftware dat men een compiler  noemt.

Bekijk de film

serviceName=vimeo&width=&height=&videoId=399608860&loop=0&autoplay=0&fullscreen=0&info=0

Mechanisch programmeren in de oudheid

serviceName=vimeo&width=&height=&videoId=399509798&loop=0&autoplay=0&fullscreen=0&info=0

2000 jaar oude robots

Noel Sharkey, hoogleraar artificiële intelligentie en robotica aan de universiteit van Sheffield, bestudeerde het werk Peri Automatopoietikesvan Heron van Alexandrië, waarin hij beschrijft hoe hij automatische theaters bouwt:

"(...) Nadat ik Herons tekst grondig had gelezen, had ik niet de minste twijfel over zijn intentie. Het is duidelijk dat hij zijn robot had ontworpen om hem te kunnen programmeren en om hem in het theater voor verschillende effecten te gebruiken. Op een bepaald punt beschrijft hij zelfs hoe je ingewikkeld gedrag moet programmeren."

Heron programmeerde zijn theaters met gewichten, touwen, assen en pinnen. Aan het ene uiteinde van het touw bevestigde hij een gewicht, dat hij boven op een met tarwekorrels gevulde cilinder plaatste. Door een sleufje onder in de cilinder open te trekken, vloeiden de korrels weg. Daardoor begon het gewicht met enige vertraging te zakken. Aan de andere kant hingen twee touwen. Elk touw was rond een afzonderlijke as (de linker en de rechter vooras) gewikkeld. In beide assen waren op gelijkmatige afstanden gaten geboord. Het zakkende gewicht trok niet alleen aan de touwen, maar liet de beide assen ook draaien. De machine kon eenvoudig geprogrammeerd worden door in de gaten pinnen te plaatsen. Als je een touw rond een bepaalde pin liet teruglopen, kon je een van beide assen op elk gewenst moment in de andere richting laten roteren. Net zoals in moderne programmeertalen slaagde Heron er ook in om een timerfunctie in te bouwen. Daarvoor plakte hij met was een stuk van het touw vast aan de as. Het zakkende gewicht trok het was stilaan los. Als het touw eenmaal was losgekomen, begon de as weer te roteren.

serviceName=vimeo&width=&height=&videoId=399217339&loop=0&autoplay=0&fullscreen=0&info=0

De programmeerinstructies waren vastgelegd in zijn machine, maar op zo’n manier dat je het toestel kon herprogrammeren door de pinnen te verplaatsen. Het programma werd ‘opgeslagen’ in de assen met wat we  binaire instructies zouden kunnen noemen. Een pin staat voor een 1, een gat zonder pin voor een 0 (of omgekeerd).

Het automatische theater van Heron reed volkomen zelfstandig het podium van het theater op. Daar stopte het en toonde een toneelstuk van mechanische poppen, die eveneens door een mechanisme van pinnen, gewichten, touwen, assen, tandwielen en hefbomen werden aangedreven. Het theater was voorzien van decorwissels en geluidseffecten. Door op een bepaald moment een sleuf open te trekken vielen loden ballen op een trom, wat het geluid van donder simuleerde. De ongeziene genialiteit die hij aan de dag legde bij het programmeren van zijn automatische theaters doet vermoeden dat ze slechts een stap waren in een lange traditie van programmeerbare machines. Dat blijkt ook uit zijn teksten. 

serviceName=youtube&width=&height=&style=&videoId=5LBlusUD3Kg&related=0&autoplay=0&loop=0&info=0&fullscreen=0&noCookie=0

...

Heron klaagt er uitdrukkelijk over dat schrijvers die voor hem leefden niet duidelijk genoeg waren in hun boeken over automaten. Hij verwijst ook expliciet naar het thans verdwenen boek van Philo van Byzantium over automatische theaters. Ook de werken van Aristoteles bevatten referenties aan automaten, en zelfs in de Ilias van Homeros lijken sommige passages automaten ter sprake te brengen.

Het heeft er dus alle schijn van dat automaten een onafgebroken traditie van overerving kennen, startend bij Philo van Byzantium over Heron, via de Arabische ingenieur Al-Jazari en Leonardo da Vinci naar de programmeerbare weefgetouwen van Jacquard. Moderne software heeft met andere woorden oeroude wortels.

De computer van Antikythera

Natuurlijk moet je niet denken dat elke Griek of Romein met een laptop naar zijn werk ging, maar de principes van informatieverwerking en programmeren waren bekend. Er was geen klassieke versie van Microsoft of Apple. De technologie werd niet gecommercialiseerd of in massaproductie genomen. Nu is dit uiteraard anders. Toch zou in het hellenistische Alexandrië van de 3e eeuw v.C. een massa uitvindingen het licht zien die nog steeds de basis vormen van de westerse technologie: tandwielen, schroeven, het differentieel, pneumatica, hydraulica, waterpompen, de stoommachine, automaten, klokken, programmeerbare machines... 
Via de Arabieren, middeleeuwse kopiisten en een hernieuwde interesse voor de klassieke ingenieurskunde tijdens de renaissance zou die technologie voortleven in Oost en West en zelfs mee aan de basis staan van de industriële revolutie.
De computer van Antikythera. Bron:  https://nl.wikipedia.org/wiki/Mechanisme_van_Antikythera

De Griek Elias Stadiatos voorzag in zijn levensonderhoud als sponsduiker. Vlak voor Pasen 1900 dook hij in de buurt van het kleine eiland Antikythera tot op een diepte van 42 meter. Daar stuitte hij op de resten van een vrachtschip uit de klassieke oudheid (vermoedelijk de 1e eeuw v.C.). Hij meende in de beelden die tussen het wrakhout lagen lijken te zien. Helemaal over zijn toeren zwom hij naar het oppervlak. Hij wierp zijn helm af en schreeuwde dat hij naakte vrouwenlijken had gezien.

Al snel had men door dat het om  een archeologische vondst ging. Sponsduikers doken meerdere beelden, juwelen, bronzen voorwerpen en andere artefacten op van de vindplaats. Twee jaar later, op 17 mei 1902, stelde de archeoloog Valerios Stais vast dat in een stuk opgedoken ‘steen’ een tandwiel vastzat. Verder onderzoek wees uit dat het in werkelijkheid ging om een zwaar verroest stuk metaal dat de schipbreuk had overleefd. Men vond niet minder dan drie grote onderdelen terug en een dozijn kleinere fragmenten. Het apparaat bestond uit bronzen tandwielen. De afmetingen waren verbazingwekkend: 33 centimeter hoog, 17 centimeter breed en 9 centimeter dik. Oorspronkelijk zat het toestel in een houten frame of doos ter grootte van een schoendoos, een fantastisch staaltje van miniaturisatie.

Analoge mechanische computer

Lange tijd bleef het apparaat wetenschappers intrigeren. Veel onderzoekers meenden dat het een astronomische functie had, maar niemand kende de precieze werking. Na tientallen jaren puzzelwerk en reiniging startte de Britse historicus Derek J. de Solla Price in 1951 met een systematisch onderzoek van het mechanisme. In 1959 publiceerde hij zijn bevindingen in het populair-wetenschappelijke tijdschrift Scientific American met de baanbrekende titel An Ancient Greek Computer . Volgens de vaststellingen van de Solla Price diende het toestel om de bewegingen van sterren en planeten te berekenen en te voorspellen.

Een computer? Inderdaad. Het woord computer is afgeleid van to compute(= berekenen) en dat is nu net precies wat zo'n toestel doet: het berekenen van een uitvoer op basis van invoer. Computers voorspellen met andere woorden uitvoer. De computer van Antikythera is geen digitale elektronische computer, maar een analoge mechanische computer.

De ‘computer’ van Antikythera bestaat uit verschillende lagen gegraveerde platen en tandwielen. Het doel van het instrument was informatie te geven over de stand van de zon, de maan en de vijf toen bekende planeten. Een maanwijzer toonde de maanfasen, een andere wijzer leverde gegevens over de opkomst en de ondergang van de voornaamste heldere sterren. Omdat het toestel de invoer van de gebruiker mechanisch kon verwerken en het eindresultaat simultaan kon weergeven, spreken we terecht van een analoge computer.

In 1971 deed de Solla Price, ondertussen Avalon Professor of the History of Science aan de universiteit van Yale, een beroep op Charalampos Karakalos, hoogleraar nucleaire fysica aan het Griekse instituut voor wetenschappelijk onderzoek. Met een gamma- en X-straalanalyse probeerden ze de  volledige interne werking van het mechanisme te achterhalen. Volgens Price bevat het Antikytheramechanisme een differentieel, dat volgens de meeste historici pas in de 16e eeuw werd uitgevonden en een es- sentieel onderdeel werd van onder andere de auto. M.T. Wright wees er terecht op dat het niet gaat om een differentieel, maar om een planeetwielmechanisme, een speciale vorm van het ‘eenvoudigere’ differentieel. Dankzij een planeetwielstelsel kan men in kleine toestellen tandwielmechanismen inbouwen voor grote wijzigingen in snelheid. De aandrijfas en de aangedreven assen liggen bij een planeetwielmechanisme op één lijn. Een gelijksoortig tandwielmechanisme vind je ook terug in een elektrische handboormachine. De meer dan dertig tandwielen in het apparaat hebben tanden van gelijkvormige driehoeken, die met een ongeziene precisie zijn gemaakt. Een dergelijke miniaturisatie en complexiteit zullen we pas opnieuw zien opduiken in 18e-eeuwse klokken.

serviceName=youtube&width=&height=&style=&videoId=UpLcnAIpVRA&related=0&autoplay=0&loop=0&info=0&fullscreen=0&noCookie=0

Programmeerbaar

De gebruiker kan een datum uit verleden of toekomst ingeven via een thans verdwenen zwengel of draaiknop, waarna het mechanisme de positie van zon, maan en de toen bekende planeten kon berekenen. Maar niet alleen astronomische berekeningen zoals de bewegingen van de hemellichamen waren mogelijk, het mechanisme kon ook zonsverduisteringen voorspellen en een kalender bijhouden voor culturele evenementen, zoals de (klassieke) Olympische en Korinthische Spelen.

Op basis van het onderzoek van Price zijn diverse reconstructies gebouwd, bijvoorbeeld door John Gleave. De Australische computerwetenschapper Allan George Bromley van de universiteit van Sidney maakte in samen- werking met de klokkenmaker Frank Percival en Michael Wright preciezere X-straalafbeeldingen.

Michael Wright (Curator of Mechanical Engineering in het Science Museum en nu het Imperial College in London) maakte gebruik van tomografie bij het bouwen van een reconstructie. Hij wijst op de mogelijkheid dat de Antikythera-computer een volledig uitgerust planetarium zou kunnen zijn geweest.

Het onderzoek naar het Antikythera-mechanisme is nog niet afgesloten. In het Antikythera Mechanism Research Project bundelen verschillende partijen hun krachten: de Cardiff University, Kapodistrian University en de nationale universiteit van Athene, de Aristotle University van Thessaloniki, het Nationaal Archeologisch Museum van Athene, X-Tek Systems UK (3D surface imaging) en Hewlett-Packard USA (microfocus tomografie). Hun onderzoek heeft al heel wat vruchten afgeworpen: het aantal teruggevonden fragmenten is al opgelopen tot 70. Zij ontcijferden meer dan 95% van de 2000 karakters en konden daarmee aantonen dat het wel degelijk om een astronomische computer gaat. CT-scans van X-Tek in 2006 hebben uitgewezen dat het toestel nog veel complexer en ‘slimmer’ was dan Price had gedacht.

Meer dan 2000 jaar oud

Het apparaat is volgens het recentste onderzoek gebouwd tussen 150 en 100 v.C, een stuk ouder dan wat tot nog toe werd vermoed. Over de oorsprong doen meerdere hypothesen de ronde. Twee vragen zijn hierbij cruciaal: wie heeft het toestel gebouwd en waarom bevond het zich aan boord van een vrachtschip? Volgens Price was het gebouwd op Rhodos, in die tijd het centrum van astronomie, mechanica en automaten. De Romeinse schrijver Cicero (1e eeuw v.C) spreekt over een instrument van zijn leraar Posidonius (Rhodos, ca. 135–51 v.C.) dat de beweging van zon, maan en vijf planeten kon weergeven. Misschien was het schip op weg naar Rome met een hoop ‘schatten’ aan boord die moesten dienen bij een triomfantelijke parade voor Julius Caesar?

Anderen wijzen in de richting van de beroemde Archimedes, omdat hij aan de basis staat van de ingewikkelde geometrie die nodig is voor het ontwerp van de computer. Bovendien doet het verhaal de ronde dat de Romeinse generaal Marcus Marcellus na het beleg van Syracuse, waarbij Archimedes omkwam, een planetarium naar Rome liet overbrengen.

Een derde hypothese stelt dat het gebouwd werd in Korinthe of een van hun kolonies, zoals Taurominion of Syracuse op Sicilië (de thuisbasis van Archimedes), omdat er Korinthische maandnamen op de platen voorkomen. Weer anderen herkennen er de astronomische kennis van Hipparchus (ca. 190–120 v.C.) in.

Pin-en-slotmechanisme

Het opmerkelijkste onderdeel is ongetwijfeld het zogenaamde ‘pin-and- slot’-mechanisme, dat moeilijk in woorden te vatten is en werd aangewend om de ongelijke beweging van de maan op te nemen. Op één tandwiel staat een pin die past in een langgerekte sleuf van een ander bovenliggend tandwiel. Wanneer dat tandwiel draait, schuift de pin voor- of achteruit in de sleuf, waardoor het bovenste tandwiel nu eens vooruit en dan weer achteruit beweegt. Het is enigszins vergelijkbaar met het Scotch Yoke-mechanisme, waarbij een lineaire beweging kan worden omgezet in een roterende of omgekeerd.

Van 'pin'automaat tot ponskaart

Een computer kan met behulp van software een heleboel taken automatiseren om de mens werk uit handen te nemen en vooral de benodigde (werk)tijd te verkorten. Toch beseffen velen nog steeds niet hoe ze dat precies moeten doen. De zoek-en-vervangopdracht in een tekstverwerkingsprogramma is daar een simpel voorbeeld van. In heel wat software kunnen steeds weerkerende taken met behulp van zogenaamde macro’s geautomatiseerd worden. Je voert een aantal taken uit terwijl de computer de uitgevoerde opdrachten stapsgewijs registreert. Nadien kan hij zelfstandig die taak herhalen. De lijst met instructies is vastgelegd in het geheugen van de computer. In automaten zitten de instructies eveneens in de machine. 

Klokken en automaten

De kennis van het bouwen van klokken en automaten ging niet volledig verloren in de middeleeuwen. Meer nog, heel wat kerken en kathedralen zijn uitgerust met op 'pinmechanismen' gebaseerde automaten. De kennis die Heron demonstreerde met zijn automatische theaters, was dus zeker niet verloren gegaan. Klokken, automaten, muziekdozen... Ze kenden een gemeenschappelijke evolutie en kruisbestuiving die rechtstreeks een invloed zou uitoefenen op de moderne computer- en robottechnologie.

In de loop van de eeuwen werden mechanische muziekapparaten ontwikkeld in opdracht van en voor de rijkere klassen (adel en geestelijkheid). De geschiedenis van de mechanische muziek is nauw verbonden met die van de klok en automatische poppen en beelden. In het Engels maakt men een onderscheid tussen de woorden clocken timepieceClockverwijst altijd naar het mechanische geluid dat het uurwerk produceert, terwijl een timepiecewel het tijdstip aangeeft, maar hierbij geen geluid laat horen.

Zowel in de moslimwereld als in het christelijke Westen waren klokken essentieel in de godsdienst beleving. Ze gaven aan wanneer de momenten van gebed en bezinning waren aangebroken. De historische bronnen zijn niet altijd volledig en vaak worden uitvindingen onterecht toegeschreven aan een bepaalde persoon of zelfs regio. 

Het mag duidelijk zijn dat de ingenieurs in het Oosten en het Westen te rade zijn gegaan bij de klassieke voorbeelden, en soms eigen toevoegingen hebben gedaan. Bovendien werd niet altijd een strikt onderscheid gemaakt tussen klokken, automaten en mechanische muziekinstrumenten. 

Twee technieken

In wezen vinden we in de muziekdozen twee verschillende, maar toch op elkaar lijkende technieken: 

  1. een cilinder met pinnen 
  2. geponste schijven of platen. 

Beide worden aan het draaien gebracht, waarbij ofwel de pinnen ofwel de gaten instructies doorgeven aan de rest van het mechanisme. Zonder twijfel is de cilinder met pinnen de oudste vorm voor het mechanisch doorgeven van instructies, zoals het produceren of reproduceren van muziek. Heron van Alexandrië (eerste eeuw na Chr.) maakte er al gebruik van.

Automaten in het oosten

Voor het oudst bekende door cilinders aangestuurde mechanische muziekinstrument moeten we naar het Bagdad van de 9e eeuw. De drie gebroeders Ahmad, Muhammad en Hasan bin Musa ibn Shakir, beter bekend als de Banū Mūsā(zonen van Mozes, naar de naam van hun vader), waren in opdracht van de Abassidische kalief al-Ma’mun actief in de astronomische observatoria van Bagdad en in het zogenaamde Huis van de Wijsheid (Bayt al-Hikma). Naar verluidt stuurden ze boodschappers naar onder meer Byzantium om op zoek te gaan naar originele of gekopieerde klassieke teksten over wetenschap en techniek. Muhammad zou zelf ook naar Byzantium zijn gereisd. Maandelijks betaalden ze meer dan 500 dinar aan een groep vertalers die de overgebrachte klassieke werken omzetten in het Arabisch. 

serviceName=youtube&width=&height=&style=&videoId=mYzPxwnGs34&related=0&autoplay=0&loop=0&info=0&fullscreen=0&noCookie=0

...

In opdracht van de kalief verifieerden ze de door Eratosthenes berekende omtrek van de aarde, wat bewijst dat ze niet alleen goed onderlegd waren in de astronomie, maar ook in de wiskunde. De meeste bekendheid verwierven ze echter door hun boek Kitāb Al-Hiyal (Het boek van ingenieuze apparaten). Heel wat toestellen in dit boek zijn duidelijk geïnspireerd op de ontwerpen van onder meer Heron van Alexandrië, Philo van Byzantium en oudere Perzische, Indiase of misschien zelfs Chinese uitvindingen. 

Toch hebben de broers overduidelijk hun eigen stempel gedrukt en veel ingenieuze toevoegingen bedacht. Het verschil zat hem in het gebruik van onder andere automatische zwengels, ventielen en conische kleppen als automatische reguleersystemen. Als geen ander wisten ze om te gaan met kleine variaties in aerostatische en hydrostatische druk om net dat doel te bereiken dat ze voor ogen hadden.

Een voor ons uitgangspunt belangrijk apparaat in de Kitāb Al-Hiyal is de automatische fluitspeler. Het toestel vindt zijn voorlopers overduidelijk in het werk van de Alexandrijnse ingenieurs Ktesibios, Heron en Philo van Byzantium. Velen zien de automatische door waterkracht aangedreven fluitspeler van de Musa-broers als het eerste programmeerbare muziekinstrument. Door de uitgebreide beschrijving van het uiterlijk en de werking weten we dat het toestel ook echt heeft gefunctioneerd en dat het niet zomaar gaat om een legende. Het zou ons te ver leiden als we de volledige werking van het toestel hier zouden uitleggen, maar we beperken ons tot het meest essentiële onderdeel: de programmeerbare trommel of cilinder om de melodie vast te leggen of weer te geven.

Banu Musa, automatische fluitspeler.  https://muslimheritage.com/lorgue-hydraulique-des-banu-musa-the-hydraulic-organ-of-banu-musa/

Door een fluit werd een constante luchttoevoer geblazen. Net zoals bij een blokfluit was hun automatische fluit voorzien van openingen voor de diverse ‘vingerzettingen’. Dempers sloten de openingen van de fluit luchtdicht af. De dempers waren op hun beurt bevestigd aan houten armpjes of lichters. Een groot tandwiel werd in beweging gebracht door een constante waterstroom. Dat zette op zijn beurt een kleiner tandwiel in beweging dat een trommel of cilinder liet roteren. Op de cilinder waren vermoedelijk houten pinnen aangebracht die tijdens het roteren de armpjes of lichters naar beneden drukten, waardoor de dempers van een of meerdere openingen werden opgelicht, de lucht kon ontsnappen en de melodie weerklonk. Het spreekt voor zich dat de snelheid van de watertoevoer bepalend was voor de snelheid van het afspelen van de muziek. Ze voorzagen in hun beschrijving ook de mogelijkheid om de hele constructie te verbergen in een standbeeld van een fluitspeler, waarbij de vingers werden benut als lichters en de trommel werd verstopt in de mouw.

Muziekregistratie

Een nog veel grotere uitdaging was het vastleggen van de melodie. Ook daarbij gingen ze uiterst inventief te werk. Hun beschrijving om de vingerzettingen van een echte fluitspeler te registeren en die melodie op de cilinder over te zetten, is niet alleen zeer duidelijk maar vooral ook onwaarschijnlijk ingenieus! De Musa-broers lieten zich hier duidelijk  inspireren door de houten, met was bestreken bordjes die de leerlingen van de basisschool van Byzantium als schrijftabletjes gebruikten. Ze bestreken een houten of messing cilinder met zwarte was. Een constructie van lichters werd aan één zijde aan de vingers van een echte fluitspeler bevestigd. 

Aan de andere kant hechte men er stiften aan die boven de met was bestreken trommel hingen. Wanneer de fluitspeler zijn melodie speelde, tekenden de stiften in de was van de roterende trommel een patroon telkens als de fluitspeler zijn vingers oplichtte. Zo verkregen ze een nagenoeg perfecte weergave van de melodie in de waslaag. Gelijkenissen met de eerste fonograaf met wassen cilinders van Edison zijn hier niet uit de lucht gegrepen! Uiteraard moesten ze dit patroon dan nog overzetten op een kleinere cilinder. 

Niet alle onderdelen of uitbreidingen van de automatische fluitspeler zijn even goed uitgewerkt, maar de broers zagen duidelijk een massa mogelijkheden. Zo bedachten ze dat het mogelijk moest zijn om de cilinder opzij te laten schuiven nadat een melodie afgespeeld was. Dat wilden ze bereiken door de trommel met een touw vast te maken aan een vlotter. Door op het juiste moment een watervat met sifon te laten leeglopen, kon de zakkende vlotter de trommel opzijtrekken en vervangen door een andere.

De evolutie in het westen

In Toledo wekte de waterklok van al-Zarqali in de 11e eeuw verbazing en ontzag. In de 12e eeuw bouwde de ingenieur Badi al-Zaman al-Jazarieen tot de verbeelding sprekende waterklok in de vorm van een Indische olifant met op zijn rug Chinese draken, een feniks en allerlei Arabische figuren. Hij beschreef de klok uitgebreid in zijn Kitab fi ma’rifat al-hiyal al-handasiyya (Boek der kennis van mechanische toestellen). 

serviceName=youtube&width=&height=&style=&videoId=9q9G0S8fADQ&related=0&autoplay=0&loop=0&info=0&fullscreen=0&noCookie=0

...

Net zoals de Banū Mūsā liet hij zich inspireren door klassieke voorbeelden. In het christelijke Praag werd de astronomische klok in de 14e eeuw uitgerust met een reeks ‘automaten’. In Europa waren vooral de Lage Landen en Zuid-Duitsland toonaangevend. Samen met zijn vader verhuisde de klokkenmaker Nicholas Vallin (1558–1603) in de jaren 1580 vanuit Rijsel (Lille) naar Engeland. Het British Museum bewaart nog steeds een prachtexemplaar van een muzikale kamerklok van zijn hand. Het toestel heeft een wijzerplaat met wijzers voor uren en minuten. Elk kwartier speelt de klok een ander stukje muziek op de dertien bellen die bovenaan bevestigd zijn. Naar klassiek voorbeeld wordt de klok aangedreven door gewichten.

De Alexandrijnse ingenieur Ktesibios rustte in de derde eeuw voor Christus zijn waterklokken al uit met zingende vogels. De automatenbouwers van de 18e eeuw wilden hun vogels niet alleen laten zingen, maar vooral ook levensecht maken. Beroemd is de mechanische eend van Jacques de Vaucanson (1709–1782), die kon eten, drinken en... uitwerpselen produceren. De Londense juwelier en goudsmid James Cox (1723–1800) liet zich door de juiste mensen omringen om zijn ongebreidelde fantasie in de realiteit om te zetten. Zijn roem bezorgde hem klanten in oost en  west. In 1772 opende hij een eigen museum, de Spring Gardens, waar hij zijn automaten onderbracht. Om de kosten van deze wel erg dure operatie te drukken organiseerde hij loterijen in Londen en Dublin. In de collectie van het Hermitagemuseum in Sint-Petersburg bevindt zich nog steeds de Peacock Clock, een prachtige automaat van Cox bestaande uit onder meer een mechanische pauw, haan en uil en een wijzerplaat verstopt in een paddenstoel. De automaat is nog steeds het pronkstuk van het museum en bovendien de enige nog resterende 18e-eeuwse automaat.

Om ruimte te besparen verving Antoine Favre-Salomon (1734–1820), een klokkenmaker uit Geneve, in 1796 de belletjes door een kam met voorgestemde metalen noten. Daardoor konden uurwerkmakers mechanische muziektoestellen inbouwen in veel kleinere toestellen. Zijn stadsgenoot Isaac Daniel Piguet (1775–1841) zou vier jaar later de cilinder vervangen door een horizontaal geplaatste schijf met pinnen. Nauwelijks elf jaar later nam de productie van muziekdozen ongeveer 10% in van de Zwitserse export, waarmee ze de verkoop van uurwerken en kant ruim voorbijstak. Voor het eerst bereikten de muziekdozen een groter publiek.

Een 18e eeuwse automaat die teksten kon schrijven. Het toestel kon opnieuw geprogrammeerd worden.

Modules en onderdelen

En wat met Leonardo die zo wat overal opduikt en vaak wordt afgeschilderd als het grote genie van de renaissance?

Leonardo da Vinci was niet alleen schilder, maar ook ingenieur en beeldhouwer. Hij las gretig de vertalingen van Heron en Vitruvius, en bestudeerde de verschillende onderdelen van de machines. Hij noemde ze de ‘elementen’ of ‘organen’ van de machines. Door die onderdelen op allerlei manieren te combineren kon je in zijn ogen een oneindig aantal machines bedenken en bouwen. Wanneer je de werken van Da Vinci bekijkt, doen ze vaak denken aan de handleidingen uit dozen Lego® Technics.

Modulair ontwerp, zoals dat tegenwoordig ook opduikt bij het zogenaamde object-georiënteerde programmeren, duikt dus ook al in zijn geschriften op.

In zijn teksten beschreef hij welke soorten schroeven, tandwielen, vliegwielen, kogellagers, kettingen, veren, katrollen enzovoort er bestaan en hoe je ze maakt. Hij voorzag zijn teksten van uitgebreide technische tekeningen in perspectief. Zelf ontwierp hij een hele reeks machines: oorlogstuig zoals mortieren en tanks, baggerschepen, vliegtuigen, een helikopter, een duikpak, een hydraulische zaag... Velen denken dat hij prototypes van die geniale vondsten zelf heeft uitgetest. Toch is het grootste deel van zijn uitvindingen nooit in praktijk gebracht. 


Een robotleeuw

Leonardo da Vinci was ervan overtuigd dat de natuur geen levende wezens kan laten bewegen zonder daarbij gebruik te maken van ‘mechanische onderdelen’. Daarom voerde hij in het geheim dissecties uit op lijken om de werking van de menselijke organen en spieren te bestuderen. Uit wat hij leerde, raakte hij ervan overtuigd dat het mogelijk moest zijn om organen of werkende organismen na te bouwen. Eeuwen voordat ze opnieuw werd ontdekt, vond hij aderverkalking en de oorzaak ervan. Door het nauwkeurig bestuderen van botten en spieren slaagde hij erin om de eerste ‘robots’ te bouwen die zich ‘zelfstandig’ konden bewegen.

In 1550 schreef Giorgio Vasari (1511–1574) in zijn boek over het leven van de belangrijkste Italiaanse kunstenaars:

"Toen Leonardo da Vinci in Milaan was, kwam de koning van Frankrijk op bezoek. Hij vroeg hem iets speciaals te doen. Da Vinci ging aan de slag en presenteerde hem een leeuw die een paar stapjes zette en zijn borstkas opende, waar tal van lelies uit tevoorschijn kwamen."

De Amerikaanse robotexpert Mark Rosheim bestudeerde de Codex Atlanticus van Da Vinci in de hoop sporen te vinden van die robotleeuw. Hij is ervan overtuigd dat Da Vinci de leeuw op een mechanisch programmeerbaar wagentje had geïnstalleerd. Een veermechanisme deed wielen draaien, die op hun beurt kleinere wielen in beweging zetten. Die stuurden houten armen aan, waaraan een soort schaarmechanisme was bevestigd. Door de armen volgens een vastgelegd plan te laten bewegen kon het karretje rijden en ook draaien.

Leonardo was niet de enige die vruchtbaar gebruikmaakte van de kennis van automaten die via vertalingen van klassieke en hellenistische werken doorsijpelde. Gedurende de middeleeuwen, die vaak als een donkere periode zonder vooruitgang worden afgeschilderd, kenden automaten en klokken een sterke ontwikkeling. Leonardo is dus niet het grote genie die het programmeren van robots heeft bedacht. Hij kon buigen op een grote traditie in Europa, een traditie die haar oorsprong vond in het Egyptische Alexandrië van de oudheid.

Automatisering in de industrie

Ponssystemen in weefgetouwen...

De eerste die een soortgelijk programmeerbaar systeem inzette voor industrieel gebruik was de Fransman Joseph Marie Jacquard(1752–1834). Hij ontwierp in 1801 een weefgetouw dat werd aangestuurd door ponskaarten. Hij baseerde zich voor zijn werk op de eerdere uitvindingen van onder anderen Basile Bouchon, Jacques Vaucanson en Jean Falcon.

Bouchon dacht out of the box 

Basile Bouchon, zoon van een orgelbouwer, bedacht al in 1725 een manier om een weefgetouw aan te sturen met een geperforeerde rol papier. Bouchons vader maakte cilinders met pinnen voor orgels. Om de pinnen op de juiste plaatsen aan te brengen in de cilinder, tekende hij eerst een patroon op een kartonnen plaat. Die plaat draaide hij vervolgens om de cilinder waardoor hij precies wist waar hij de pinnen in de cilinder moest slaan. Basile meende dat het handiger zou zijn de kartonnen platen zelf te gebruiken. Het was Jacquard die het systeem als eerste succesvol wist te implementeren.

Het ponskaartsysteemzien we in de 19e eeuw ook opduiken in muziekdozen en pianola’s. Ponskaarten werkten op een vergelijkbare manier als pin- of kamsystemen. In het geval van muziekdozen kon door de gaatjes lucht van een blaasbalg ontsnappen of er konden pinnetjes door schieten die instructies gaven aan de rest van het mechanisme. Bij Jacquard sprongen pinnen op door de openingen in de ponskaarten en lieten het weefgetouw een bepaald patroon weven. Het grootste voordeel van een ponssysteem was dat je veel meer instructies achter elkaar kon laten uitvoeren door de machine. Bij een cilindersysteem met pinnen of kammen was je beperkt door de omtrek van de cilinder. Ponsplaten kon je oprollen of opvouwen en door het mechanisme laten schuiven bij het uitvoeren van het programma. De wevers van Lyon vreesden voor hun werk en verbrandden het weefgetouw in 1808, zo vertelt het verhaal. Blind protest tegen een niet te stuiten innovatie. Maar dit verhaal klopt niet. Van die brand is helemaal geen sprake geweest. Het verhaal duikt voor het eerst op aanvang 19e eeuw.

Babbage bedacht een computer met ponskaarten

Al snel zag men ook op andere vlakken van de samenleving het nut van een ponskaartsysteem. Je kon op een ponskaart allerlei soorten informatie in gecodeerde vorm opslaan en het geautomatiseerd laten uitlezen. Charles Babbage(1791– 1871) tekende plannen voor een analytische rekenmachine en voorzag de invoer van ponskaarten. Zijn plannen betekenden een serieuze stap voorwaarts in de ontwikkeling van een rekenmachine. Eerder bouwde de Fransman Blaise Pascal (1623–1662) een mechanische rekenmachine, maar die was nooit een succes geworden. Ook de machine van Babbage kwam niet veel verder dan de ontwerptafel.

De computer met ponskaarten van Babbage baande via bedrijven als IBM zijn weg naar de  moderne industrie. Die veroveringstocht kwam nog niet tot zijn einde.

Zo lijkt dit verhaal rond. Mijn ontdekkingstocht naar de oorsprong van computertechnologie, robotica, programmeren en automatisering, begon op de zolder bij mijn ouders. Het bracht ons tot het Alexandrië van de Klassieke Oudheid. Misschien een woordje meer over dit Silicon Valley van de Klassieke Oudheid.