Datatypes zijn een belangrijk onderdeel bij het programmeren: ze geven aan welke waarden een variabele kan aannemen.

Bijvoorbeeld, wanneer we werken met een variabele test van het type bool, dan weten we dat de test slechts twee waarden kan hebben: geslaagd (True) of gefaald (False). Enkele andere eenvoudige datatypes zijn getallen (int), kommagetallen (float) of tekst (string).

eevee

❗ Begrip - Datatype

Een datatype duidt de soort (type) van waarden aan die gegevens (data) kunnen hebben. Enkele voorbeelden van datatypes zijn int, bool, float en string.

Datatypes geven ook aan hoe waarden opgeslagen worden in het geheugen. Het geheugen van een computer kan je voorstellen als een opeenvolging van geheugencellen. Dit kan je vergelijken met postbakjes waarin brieven kunnen worden gelegd die later kunnen worden opgehaald door hun eigenaar. Zoals elk postbakje, heeft ook elke geheugencel een manier om zich te identificeren: een getal. In het geval van de geheugencel noemen we dit een geheugenadres. De geheugencel kan aan de hand van zijn geheugenadres onderscheiden worden van de andere geheugencellen. Een geheugen met 60 geheugencellen kan je grafisch voorstellen als volgt:

geheugenmodel

👀 Voorbeeld - Tekst opslaan in het geheugen

Tekst bestaat uit een opeenvolging van karakters of symbolen en is van het type string. Om de tekst 'hallo' op te slaan, splitsen we de string op in h, a, l, l en o. We slaan elk van die letters op in willekeurige, maar opeenvolgende geheugencellen.

geheugenmodel_hallo

💡 Hint

Om op een efficiënte manier bij te houden waar de tekst 'hallo' is opgeslagen, hebben we enkel het geheugenadres nodig van het eerste karakter. We weten namelijk dat de karakters altijd in opeenvolgende cellen worden opgeslagen.

In het voorbeeld hierboven moeten we enkel het geheugenadres 29 kennen om de tekst hallo terug te vinden.

👀 Voorbeeld - Datum

Het volgende stukje code stelt de datum 10 juni ‘54 voor, met dag, maand en jaar als aparte variabelen.

dag   = 10
maand = 6
jaar  = 54

Dit zou bijvoorbeeld kunnen leiden tot onderstaande invulling van het geheugen.

geheugenmodel_hallo

💡 Hint

Merk op dat de geheugencellen niet achter elkaar vanaf het begin worden ingevuld. Er wordt steeds een willekeurig deel van het geheugen gekozen waar er voldoende plaats is.

Je ziet dat in het voorbeeld hierboven het geheugenadres van variabele dag 33 is, voor variabele maand is het geheugenadres 5 en voor variabele jaar is het geheugenadres 14. Dit zijn niet de waardes van deze variabelen, die zijn respectievelijk nog steeds 10, 6 en 54.