Tekencodering (character encoding)

META Nummer 2021/1

Tekencodering (character encoding)

Geschreven door Bart Magnus
Gepubliceerd op 02.02.2021
IMPORTANT

Het is je wellicht ook al overkomen: je opent een document en bepaalde tekens blijken niet correct weergegeven. Tekens met een accent vormen vaak een probleem. Hoe komt dat? Een fout in het bestand? Neen, het heeft te maken met tekencodering. Een beter begrip van tekencodering helpt je dat probleem omzeilen.

Digitale documenten bestaan uit nullen en enen. De eindeloze reeksen nullen en enen krijgen pas betekenis voor mensen wanneer software ze omzet. Wanneer je een foto opent, worden ze een verzameling pixels die een bepaalde kleur krijgt om een beeld op te bouwen.

In een tekstueel document worden ze tekens die we kunnen lezen. De omzetting lijkt vanzelf te gebeuren, maar niets is minder waar. Iedereen is vertrouwd met de term kilobyte als eenheid om aan te geven hoeveel geheugen een bestand inneemt. Net zoals een kilometer duizend meter is, is een kilobyte duizend byte.

Een byte is een opeenvolging van 8 bits. Een bit is simpelweg een binaire eenheid die ofwel 0 of 1 als waarde heeft. Een byte is dus een achtcijferig binair getal, (bv. 00110101). In totaal zijn er 256 manieren (2⁸) om een byte te vullen.

Computers werken met bepaalde conventies (standaarden) om die binaire getallen naar een voor mensen zinvol teken te vertalen. Die conventies noemen we tekensets. Tekencodering is dus het omzetten van achtcijferige binaire getallen naar betekenisvolle tekens volgens de logica van een bepaalde tekenset.

Of andersom: het omzetten van een teken op het toetsenbord van jouw computer naar de nullen en enen die een computer moet opslaan. In de meeste gevallen verloopt dat probleemloos.

De meeste documenten die je vandaag in je mailbox vindt, zijn gecodeerd volgens een hedendaags gangbare tekenset. De software die je gebruikt om die documenten te openen, slaagt er meestal ook in om die tekenset te achterhalen en het document leesbaar weer te geven.

Toch zal het in sommige gevallen nodig zijn om zelf een tekenset te specificeren, bijvoorbeeld wanneer je tekstbestanden in een spreadsheet wilt openen of wanneer je oude documenten in een hedendaagse tekstverwerker wilt openen.

IMPORTANT

De eerste gestandaardiseerde tekenset was ASCII (American Standard Code for Information Interchange). Deze telde oorspronkelijk 128 tekens.

Genoeg voor de meeste Engelse teksten, maar ontoereikend voor veel andere talen. Met ISO Latin 1 (of ISO-8859-1) ontstond een eerste gestandaardiseerde tekenset waarmee de meest gangbare tekens uit de belangrijkste West-Europese talen voorgesteld kunnen worden.

Met ISO Latin 2, 3 en 4 volgden ook tekensets voor Oost-, Zuid- en NoordEuropese talen. In een wereld met steeds meer internationale uitwisseling werd het plan opgevat om alle tekens in één universele tekenset te vatten. Unicode was geboren.

Met 4 bytes (32 bits) per teken voorzag men voldoende ruimte. Het betekent dat aan meer dan 4 miljard tekens (2³²) een unieke combinatie van enen en nullen toegekend kon worden. Unicode bouwde verder op ASCII in de zin dat de eerste 256 tekens identiek zijn.

Daardoor zullen teksten die correct weergegeven worden in ASCII nooit problemen opleveren in Unicode. De meest gangbare standaard vandaag is UTF8. Deze set slaat tekens uit de Unicodetekenset op met een variabele lengte: 1 bit wanneer er maar 1 nodig is, 4 bits als dat noodzakelijk is.

Zie je voortaan foute tekens weergegeven in een document? Dan weet je dat het wellicht aan de tekencodering ligt. Afhankelijk van het document dat je voor je hebt, kun je op zoek gaan naar de meest geschikte tekenset om het document correct te lezen.

Een overzicht van de meest courante tekensets vind je onder andere op bit.ly/Tekensets

Waarom lid van de VVBAD worden?

  • Deel zijn van het netwerk van experten en collega's
  • Mee de belangen van de informatiesector behartigen
  • Korting krijgen op de activiteiten van de VVBAD
  • Toegang krijgen tot vakinformatie
  • Participeren in de verenigingsbesturen
Word lid
© Vlaamse Vereniging voor Bibliotheek, Archief & Documentatie vzw
Statiestraat 179 | B-2600 Berchem (Antwerpen)
Tel: (+32) 03 281 44 57 | email: vvbad@vvbad.be