Getallen, cijfers en letters
Laatst schreef ik al een blog over telefoonnummers en letters. Maar voor de echte nerd is er meer!
In de tijd dat ik me met electronica bezighield, maakte ik kennis met getallen met letters erin. Pas recent ben ik me gaan beseffen hoe ver de „electro boeren” toen al hun tijd vooruit waren op de informatica.
Het zorgvuldig documenteren (van onderzoek en metingen) zoals ze je dat bijvoorbeeld ziet in Elektuur is iets waar ze in sommige bedrijfstakken tegenwoordig nog steeds niet van kunnen dromen. Maar dat is nog niet eens waar ik het nu over wil hebben.
Weg met de decimale punt
Via Elektuur maakte ik kennis met een aparte manier van het noteren van getallen met een decimale punt/komma, of eigenlijk juist zonder.
Bij standaard electronicaonderdelen heb je te maken met waardes die kunnen uiteenlopen van biljardsten tot miljoenen. Daarbij zijn maar een paar cijfers significant. Dit lost men op door deze getallen terug te brengen naar een waarde onder de 1000 door hem te schrijven met een SI-prefix (die een macht is van 1000), met het SI-symbool als vervanging van het decimaalteken.
Bijvoorbeeld: 2700 oftewel „2,7 k” (of „2.7 k”) wordt „2k7”.
Omdat het SI-symbool daarmee je decimaalteken geworden is, ben je internationaal gezien meteen af van de discussie of dat symbool nou een punt of een komma moet zijn…
Belgen
In de tijd dat Nederlanders nog met Guldens betaalden en Belgen nog met Franken, hadden sommige Belgen iets dergelijks in hun taalgebruik verstopt.
In Nederland betekende „het kost duizend vijf” een prijs van ƒ 1.005,00
maar in België betekende „het kost duizend vijf” dat de prijs Bef 1.500 was.
Omgerekend naar Euro:
ƒ 1.000 = € 453,78, ƒ 1.005 = € 456,05
BEF 1.000 = € 24,79, BEF 1.500 = € 37,18
In België was de 5 dus duurder dan in Nederland.
Sorteren
Een andere plaats waar je in de electronica cijfers en letters door elkaar ziet, is onderandere bij typenummers van halfgeleiders zoals transistoren en IC’s. In de electronica had men 30 jaar geleden al door dat het handig is bij het sorteren van lijsten van typenummers dat dan de 2 voor de 10 komt, en niet andersom zoals bij het alfanumeriek sorteren op de PC meestal het geval is. Zo komt in een goed gesorteerde lijst de 74LS74 vóór de 74LS373 en niet erna.
En de truuk is zo simpel: een kortere reeks van cijfers is altijd het kleinste getal (negeer voorloopnullen) en zijn reeksen van cijfers precies even lang dan kan je alsnog gewoon karakter voor karakter vergelijken.
Pas sinds Windows XP houdt Windows bestandsnamen op de juiste volgorde als je er getallen in gebruikt.
e
Toen ik begon te programmeren maakte ik kennis met de „wetenschappelijke notatie” in de e-notatie. In het kort uitgelegd: grote en kleine getallen breng je in de buurt van de 1 door er een macht van 10 uit te halen. Je gebruikt de letter „e” ter vervanging van „… maal 10 tot de macht…”
Bijvoorbeeld: 1000 is „1e3” (1 maal 10 tot de macht 3)
In zo’n getal kan nog steeds een punt staan, bijvoorbeeld 1.5e3 voor 1500. Het „e3” gedeelte betekent dat de komma 3 plaatsen naar rechts moet. Als de komma 3 plaatsen naar links zou moeten, had er „e-3” gestaan.
Het voordeel van deze notatie is dat je snel grote getallen kunt typen. In de tijd dat ik nog programmeerde was voor mij 1e9 vaak groot genoeg om programma’s te testen – het was een snelle manier om te controleren of iemand de invoer gebruikte om een array te DIMmen.
0
Het getal 0 is om meerdere redenen bijzonder.
Als er voor de decimale punt een 0 staat, dan mag je die 0 weglaten. Bijvoorbeeld 1500 mag je schrijven als .15e4
Wanneer een waarde als „0” weergegeven wordt, dan wil dat niet altijd zeggen dat er helemaal niets is: die 0 kan immers afgerond zijn. Dit kan je ook laten zien in de weergave. In de statistieken van de WordPress blog software wordt bijvoorbeeld een nul die exact nul is in het grijs weergegeven, terwijl een getal dat door afronding 0 geworden is zwart is.
0 in computerprogramma’s
In computerprogramma’s gebruikt men soms het getal 0 om aan te geven dat een gegeven nog niet ingevuld is. In moderne databases heeft men daar een betere oplossing voor: hier kan een databaseveld in plaats van een waarde het kenmerk „niet ingevuld” hebben.
Een veld „=0” als het gelijk is aan de exact 0, maar het veld „IS NULL” als het nog niet ingevuld is. Om spraakverwarring te voorkomen kan je in dit soort situaties het getal 0 uitspreken als „zero”.
In floating point berekeningen wordt elk getal gesplitst in een teken (+1 of –1), een getal tussen 0,5 en 1 met vaste komma (mantisse) en een macht van 2 (exponent): alle drie met elkaar vermenigvuldigd vormen ze het getal. Maar het getal 0 kan je hiermee niet maken. Vaak kiezen ze ervoor om in deze „uitzonderingssituatie” alle bits op 0 te zetten voor het getal 0.
En dan heb ik het nog alleen over numerieke representatie gehad, nog niet over de code van het karakter dat het cijfer „0” uitbeeldt, of de (het „NUL” karakter, een karakter met een code waarvan alle bits 0 zijn), of een tekst met een lengte van 0 tekens (die intern meestal op precies dezelfde manier opgeslagen wordt als de ).
Cijferalfabet
Vroeger werd (op bepaalde plaatsen op aarde) een getal helemaal geschreven met letters: in plaats van speciale karakters voor cijfers werden gewoon lettertekens uit het alfabet hergebruikt.
Iedereen kent dit van de „Romeinse cijfers” met letters als I, V en X. Maar ook het Russische alfabet werd gebruikt voor getallen.
Misschien is dit een mooie gelegenheid om de kwiebus te bedanken die het voor elkaar gekregen heeft dat zoveel mensen op aarde tegenwoordig het tientallig stelsel met de symbolen 0123456789 gebruiken.
Op de site van WJSN kwam ik toepasselijke informatie tegen: „Getalsystemen van de wereld” en „Geschiedenis van de Wiskunde”
De zelfverklaarde bazen van de Nederlandse taal zijn het er niet over eens hoe je een rangtelwoord in cijfers moet schrijven. Geruststellende gedachte: de letter “e” direct achter het laatste cijfer schrijven is de enige schrijfwijze die door allemaal toegestaan is. Zie taaladvies.net.