Binaire, octale en hexadecimale getallenstelsels
In het gewone leven gebruiken wij het decimale stelsel voor de getallen. Een voor ons ‘gewoon’ getal bestaat uit cijfers van 0 tot en met 9. Deze getallen worden geschreven als macht van 10, het is een getallenstelsel met 10 als grondtal. Er zijn echter ook andere getallenstelsels, met een ander grondtal. Denk bijvoorbeeld aan het binaire getallenstelsel, met als grondtal 2, het octale getallenstelsel met als grondtal 8 of het hexadecimale getallenstelsel met als grondtal 16. De belangrijkste en meest gebruikte getallenstelsels in de informatica zijn de stelsels met als grondtal 2, 8 en 16.
De getallenstelsels
Een getal wordt uitgebeeld door een reeks cijfers achter elkaar te plaatsen. De positie van het cijfer bepaalt de macht van het grondtal. Dus op de meest rechtse positie staat de laagste macht: grondtal 0, op de positie ernaast, grondtal 1, daarnaast grondtal 2 enzovoorts. Dit klinkt ingewikkeld, maar ook ons gewone (tientallig)stelsel maakt hier gebruik van. Een ‘1’ kan al naar gelang de plaats in het cijfer een ‘1’ (nulde macht van 10) een ‘10’ (eerste macht van 10) een ‘100’ (tweede macht van 10) of een andere macht van 10 zijn. Zo is bijvoorbeeld 673 gelijk aan 600 + 70 + 3 = 6 × 10^2 + 7 × 10^1 + 3 × 10^0.
Binaire stelsel
Een getallenstelsel met als grondtal 2 wordt het binaire stelsel genoemd. Het binaire stelsel gebruikt alleen de twee binaire cijfers 0 en 1. De vertaling van ‘binair cijfer’ naar het Engels geeft ‘binairy digit’. Hierin is al snel de afkorting naar ‘bit’ te zien. Een bit is dus eigenlijk een binair cijfer.
Computers gebruiken binaire getallen (bits) om informatie op te slaan. Het geheugen van een computer bestaat uit miljarden geheugencellen. Elke geheugencel kan of de status 0 hebben, of de status 1. De geheugencel kan aan of uit staan. De informatie wordt dus vertaald in binaire code en zo gebruikt door de computer.
Wat voorbeelden van binaire getallen zijn:
- 1 → 1 (= 2^0)
- 10 → 2 (= 2^1+0)
- 11 → 3 (= 2^1 + 2^0)
- 100 → 4 (= 2^2 + 0 + 0)
- 101 → 5 (= 2^2 + 0+ 2^0)
enzovoorts.
Voorbeeld: Schrijf het decimale getal 59 in het binaire stelsel
- Begin met te kijken hoe wat de grootste macht van 2 is die past in 59. Dit is 2 tot de macht 5 = 32.
- Er blijft nu 59 – 32 = 27 over.
- Kijk nu wat de grootste macht van 2 is die past in 27. Dit is 2 tot de macht 4 = 16.
- Er blijft nu 27 - 16 = 11 over.
- Kijk nu wat de grootste macht van 2 is die past in 16. Dit is 2 tot de macht 3 = 8.
- Er blijft nu 11 - 8 = 3 over.
- Kijk nu wat de grootste macht van 2 is die past in 3. Dit is 2 tot de macht 1 = 2.
- Er blijft nu 3 - 2 = 1 over.
- Kijk nu wat de grootste macht van 2 is die past in 1. Dit is 2 tot de macht 0 = 1.
59 is dus op te delen in 2^5 + 2^4 + 2^3 + 2^1+ 2^0
dus: 59 = 1 × 2^5 + 1 × 2^4 + 1 × 2^3 + 0 × 2^2 + 1 × 2^1 + 1 × 2^0
Binair geschreven: 111011
Octale stelsel
Een getallenstelsel met als grondtal 8 wordt het octale stelsel genoemd. Het octale stelsel gebruikt de eerste 8 getallen van het decimale stelsel. Er wordt dus gebruik gemaakt van de cijfers 0, 1, 2, 3, 4, 5, 6 en 7. Het woord octaal is afgeleid van het Latijnse woord voor acht: octo.
Voorbeeld: Schrijf het decimale getal 59 in het octale stelsel
- Er gaat 7 × 8 = 56 in 59. Dit betekent dat er begonnen moet worden met een 7 op de plaats van eerste macht.
- Er blijft dan nog over van het getal: 59 – 56 = 3
Dus: 59 in het decimale stelsel wordt in het octale stelsel 73
Hexadecimale stelsel
Een getallenstelsel met als grondtal 16 wordt het hexadecimale stelsel genoemd. Het hexadecimale stelsel gebruikt 16 cijfers. Omdat onze cijfers maar van 0 tot 9 lopen worden de eerste 6 letters van het alfabet ook gebruikt als cijfers. Er wordt dus gebruik gemaakt van de cijfers 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E en F.
De kleuren in het kleurenpalet van een computer worden vaak uitgebeeld als hexadecimale getallen. Bijvoorbeeld #FFFFFF voor wit,# 000000 voor zwart, #FF0000 voor rood, #00FF00 voor groen en #0000FF voor blauw.
Voorbeeld: Schrijf het decimale getal 59 in het hexadecimale stelsel
- Er gaat 3 × 16 = 48 in 59. Dit betekent dat er begonnen moet worden met een 3 op de plaats van eerste macht.
- Er blijft dan nog over van het getal: 59 – 48 = 11. Dit is hexadecimaal #B
Dus: 59 in het decimale stelsel wordt in het octale stelsel 3B
Van het binaire naar het hexadecimale of het octale stelsel
Alhoewel computers binaire getallen gebruiken, is het voor de menselijke gebruiker prettiger om gebruik te maken van het hexadecimale of het octale stelsel. Het is redelijk eenvoudig om binaire getallen te converteren naar hexadecimale of het octale stelsels. Dit omdat het grondtal van het hexadecimale en het octale stelsel een macht van 2 is.
Decimaal | Binair | Octaal | Hexadecimaal |
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 3 | 3 |
4 | 100 | 4 | 4 |
5 | 101 | 5 | 5 |
6 | 110 | 6 | 6 |
7 | 111 | 7 | 7 |
8 | 1000 | 10 | 8 |
9 | 1001 | 11 | 9 |
10 | 1010 | 12 | A |
11 | 1011 | 13 | B |
12 | 1100 | 14 | C |
13 | 1101 | 15 | D |
14 | 1110 | 16 | E |
15 | 1111 | 17 | F |
Om een
binair getal te converteren naar een
octaal getal, moeten de volgende stappen doorlopen worden:
- Vorm groepjes van 3 bits, begin hiermee met de kleinste bits, dus rechts
- Indien het laatste, meest linkse groepje minder dan 3 bits heeft, vul dit dan aan de linkerkant aan met nullen
- Converteer de groepjes van 3 bits rechtstreeks naar een van de octale cijfers 0 tot en met 7 vanuit de bovenstaande tabel
Voorbeeld: converteer 111011 ( = 59 decimaal) naar het octale stelsel
Om een binair getal te converteren naar een hexadecimaal getal, moeten de volgende stappen doorlopen worden:
- Vorm groepjes van 4 bits, begin hiermee met de kleinste bits, dus rechts
- Indien het laatste, meest linkse groepje minder dan 4 bits heeft, vul dit dan aan de linkerkant aan met nullen
- Converteer de groepjes van 4 bits rechtstreeks naar een van de octale cijfers 0 tot en met F vanuit de bovenstaande tabel
Voorbeeld: converteer 111011 ( = 59 decimaal) naar het hexadecimale stelsel