COMPUTERIk wil hier - voor leken - het principe van de computer uitleggen en zal hierbij bijna alle moeilijke woorden vermijden. Zoals - bijvoorbeeld - de moeilijke woorden chip, processor, geheugen, harde schijf, desktop, besturingssysteem, etc. Ook wil ik eens niet ingaan dat computers kunnen rekenen en waardes met elkaar kunnen vergelijken. We focussen op het gebied van tekstverwerken, plaatjes, bestanden, browsers en internet en gebruiken hier maar een paar moeilijke woorden. Te weten:
een bit of een byte; een 'code' die acht 'nullen' en/of 'enen' bevat. Bij een computer heeft elke letter een unieke code van 8 nullen of enen. Een reeks van 8 nullen of enen heet een byte. Een byte bevat dus een letter of een getal.
Het woord 'TERWIJL' is dan - . .-. .-.- .. .--- .-.. Elke letter, elk teken en elk cijfer heeft bij (computers die met reeksen van 8 bits werken) een unieke code. De letter 'A' is bijvoorbeeld 11001110; het getal '8' is bijvoorbeeld 00011100 en het +teken of @-teken is bijvoorbeeld 10000100 en 10000111. Er zijn dan 256 verschillende codes mogelijk.
![]() Figuur 1. Een byte bestaat uit 8 bits die 0 of 1 zijn. Elke letter wordt (hier) door 8 bits gecodeerd. Hoe werkt dit in de tegenwoordige praktijk?We beperken ons hier tot de essentie van de omgang met letters en plaatjes. Als je op een computer een toets van een letter of van een getal drukt, gaan er 8 nulletjes en/of eentjes door een draadje naar de computer. Net als het principe bij morse-codes. De computer zet dan die 8 nulletjes en/of eentjes daarna via een patroon van puntjes neer op een beeldscherm als een letter of een getal. Als je op het toetsenbord een A intypt krijg je op je beeldscherm een A te zien. Als je op het toetsenbord een 8 intypt een 8. Bij een + een + en bij een @ een @. Etcetera. Want het beeldscherm bestaat bij een eenvoudige computer nu eenmaal uit 800 x 600 beeldpuntjes. De computer zet 'vanzelf' die letter in 8 x 10 beeldpuntjes op het beeldscherm. Zo weet je wat je getypt hebt. Al die letters, woorden of zinnen - al dan niet met plaatjes - kun je met een druk op de knop bewaren in een bestand of opsturen via internet naar een provider ergens anders in de wereld. Ook kun je bestanden op je eigen beeldscherm krijgen? We beperken ons tot html-bestanden (zie elders). Maar bij Word-bestanden gaat het feitelijk net zo. Meestal zijn deze bestanden ergens en komen (of gaan) via internet en meestal via een browser (zie elders) van of naar een provider (een server) ergens anders in de wereld. In dergelijke bestanden staan letters en plaatjes door elkaar heen, maar alle series van 8 bit worden achter elkaar ergens op een harde schijf gezet of ergens naar toe worden verzonden. Waarbij je bij het plaatje goed moet bedenken dat elke pixel met bijbehorende kleur wordt gecodeerd in 8 bits, waarbij elke byte een kleur representeert. Dus elke letter is een byte lang en elk pixel van een plaatje met een kleur is een byte groot. Er zijn dan 256 verschillende kleuren mogelijk. Zie onderstaande figuur.
![]() Figuur 2. Elke letter wordt (hier) door 8 bits gecodeerd en elke pixel ook (hier) door 8 bits. De browser trek dit bestand byte voor byte uit een bestand en elke verzending over het internet gaat (hier) ook byte voor byte. Alles is dus sequentieel. Elk plaatje gaat vooraf aan een code van een of twee bytes en eindigt met een code van een of twee bytes. Zodat de tekstverwerker of jouw browser weet wanneer er een plaatje komt en wanneer er weer letters komen. Als letters of woorden of zinnen cursief of bold moeten worden weergegeven gaan er ook elke keer een of twee bytes vooraf met een code cursief of bold; en op het eind daarvan een of twee bytes met een (stop-) code erin. De browser trek dit bestand byte voor byte uit een bestand en elke verzending over het internet gaat (hier) ook byte voor byte. Alles over een internet-kabel en/of over een wifi-modem gaat dus sequentieel. Byte voor byte en bit voor bit. Omgekeerd...Elke stuk tekst met plaatjes komt dus bit voor bit en byte voor byte bij jouw computer binnen op het beeldscherm. De bytes met een letters, de bytes met pixels van een plaatje; en dan weer de bytes met letters en/of weer een plaatje. Alles als een lange slinger achter elkaar. Etcetera. De tussen-codes geven extra informatie per letter, per woord of per alinea, maar ook of er een plaatje in de string tussen moet komen of niet.In het kort nog even de andere dingen van een computer...Een eenvoudige computer kan rekenen en twee dingen met elkaar vergelijken. Bijvoorbeeld of een getal A groter, kleiner of gelijk is B. Daartoe heeft een computer in principe 3 'registers' van 8 bit.
![]() Figuur 3. Het A-, B- en C- register van een computer. Dit is het hart van elke computer. Bij een rekenkundige bewerking zitten in het A- en B-register de getallen (binair) en in het C-register komt de binaire uitkomst van een bewerking (opgeteld, afgetrokken, gedeeld of vermenigvuldigd). Een register met 8 bits kan een geheel getal (een 'integer') bevatten van 0 tot 32000 bevatten. (Maar soms ook een letter. Zie verderop.)
Respectievelijk het A-register, het B-register (waar de twee getallen inzitten waar de computer een bewerking op moet toepassen) en het C-register met de uitkomst van de bewerking met die twee getallen (of van een vergelijking) in moet komen. Als je wilt rekenen met een computer dan moet er (dus) een bewerking gedaan worden op de inhoud in de twee registers. (Hoe de computer die werking tot stand brengt, laten we - hier - buiten beschouwing.) Soms zit er in het A-register een binaire letter A (#65), B (#66) t/m Z (#122). Dan kan die letter namelijk eenvoudig vergeleken worden met een andere letter. (Zie daarvoor dan weer de ascii-tabel.)
BewerkingenDe uitvinder van een rekenkundige bewerking toepassen op twee binaire getallen (bijvoorbeeld 00001001 + 00000001 = 00001010) is feitelijk de uitvinder van de computer. Je kunt dus rekenen en vergelijken. Dus twee getallen of twee letters kunnen vergeleken worden [2]. Dat is belangrijk want dan kun je de bewerking a > b uitvoeren. Ook op letters. Want letters hebben ook een rangorde. A of K hebben een hogere rang dan P of Z. Immers in de ascii-code rangorde, de binaire codering van letters is A groter dan B, etc. Zo kun je dingen in een rij op volgorde zetten. Met dat eerste kunnen je in principe alle rekenkundige bewerkingen doen en met laatste is handig voor databanken met tekst.
Een computer kan eigenlijk maar drie dingenEen computer kan eigenlijk maar drie dingen: letters en plaatjes op jouw beeldscherm zetten en uitkomsten van een interne rekenpartij of een uitkomst van een logical descision tree. Een computer kan (dus) rekenen (A+B=C) en dingen vergelijken (A>B). Hoe hij dat doet is - hier en nu - niet van belang. De computer gebruikt hierbij (slechts) het A-register met het B-register. De computer pakt de nullen en eenen uit de beide eerste registers. En doet er wat mee. Dat is op de eerste plaats rekenen, zoals optellen, aftrekken, vermenigvuldigen en delen. Zodoende kunnen (dus) formules en wiskundige modellen doorgerekend worden. Hiermee kan een computerprogramma (dan dus) hele 'slimme' uitkomsten genereren. Dat is op de tweede plaats dingen vergelijken. Voorbeeld: als (de inhoud van register A = inhoud van register B) doe dan (...) anders (...). En op de derdede plaats letters en plaatjes op jouw beeldscherm zetten. Voorbeeld: als (het antwoord JA moet zijn) zet dan JA op jouw beeldscherm. (hier wordt verder nog aan gewerkt...)
BIJLAGE 1. De morsecode-tabel:
BIJLAGE 2. De asci-tabel:
BIJLAGE 3. De integer-tabel: |