Hoe komt het dat een teken uit de ASCII-tabel maar 8 bits bevat, terwijl elke letter zoveel meer pixels heeft?

Als elke pixel in een letter zou moeten worden opgeslagen, dan zou een teken toch meer dan 8 bits bevatten. Hoe wordt dit dan omgezet? Is dat hard gecodeerd?

Weet jij het antwoord?

/2500

Het beste antwoord

Met acht bits kun je maximaal 256 verschillende combinaties maken. De letters, in de vorm van de pixels die jij beschrijft, worden op een andere manier gevormd. De ASCII-code van de letter wordt gebruikt om het bijbehorende plaatje op te zoeken in een tabel. Dat is (voor de ASCII-waarden) dus een tabel van 256 plaatjes. De hoofdletter A heeft bijvoorbeeld ASCII-code 65. Als er dus een A op het scherm moet worden gezet, wordt in de betreffende plaatjes-tabel plaatje nummer 65 opgezocht. Dat plaatje wordt op het scherm gezet. De tabel met plaatjes wordt een font (in het Nederlands: lettertype) genoemd. Als jij kiest voor het lettertype Arial, wordt er een andere lijst met plaatjes gebruikt dan als jij kiest voor het lettertype Times of Verdana. Je kunt ook hele andere lijsten met plaatjes gebruiken. Kies je bijvoorbeeld voor Wingbats of voor Symbol, dan zal op nummer 65 in de tabel niet een plaatje van een A staan, maar van een heel ander teken. Diezelfde ASCII-code 65 leidt dan tot het tonen van een heel ander teken op het scherm. Om terug te komen op je vraag: de ASCII-code is alleen maar een soort volgnummertje. Het volgnummertje wordt gebruikt om het bijbehorende plaatje op te zoeken in een tabel. Dat plaatje wordt op het scherm gezet, en ziet er voor ons uit als een A, of een 7, of een +, of elk ander teken, afhankelijk van de ASCII-code en dus van de positie in de tabel met plaatjes.   Toegevoegd na 3 minuten:   In feite bestaat de definitie van de letter A (en van elk ander teken) in de "tabel met plaatjes" niet uit een serie pixels, maar uit instructies. Denk daarbij aan instructies in de trant van "trek een lijn met dikte D van punt (P,Q) naar punt (R,S); trek daarna een lijn met dikte W van punt (R,S) naar punt (T,U). Teken dan een halve cirkel ... enzovoort". Waarbij P, Q, R, S, T, U enzovoort natuurlijk in getalvorm staan vermeld. Zo'n lijst instructies maakt het veel eenvoudiger om een bepaald teken groter of kleiner te tekenen dan wanneer een serie pixels zou zijn voorgeschreven.   Toegevoegd na 10 minuten:   Extra informatie: Tegenwoordig gaan computers steeds vaker over op Unicode. Dat is de 16-bits versie van de ASCII-code. De lijst met tekens (plaatjes) kan dan ook veel meer plaatjes bevatten: 65536 in plaats van de 256 van de ASCII-tabel. Het principe blijft echter ongeveer hetzelfde.  

De ASCII-code bepaalt alleen welke letter, welk cijfer of welk leesteken bedoeld wordt. De vorm van de tekens kan in een verzameling bitmaps staan waar de code naar verwijst. Deze verzameling bitmaps is veel groter.

Stel zelf een vraag

Ben je op zoek naar het antwoord op die ene vraag die je misschien al tijden achtervolgt?

/100