Hexadecimaal

Hexadecimaal betekent letterlijk zestientallig. Het is een talstelsel waarbij niet, zoals gebruikelijk, met tien cijfers wordt gewerkt, maar met zestien cijfers. De cijfers 0 t/m 9 worden daarom uitgebreid met 'A' (=10) t/m 'F' (=15), ook wel 'a' t/m 'f'. In deze context zijn dat dus ook cijfers, geen letters. In de computerwereld wordt de hexadecimale voorstelling van getallen veel gebruikt, omdat deze manier van representeren goed aansluit bij de binaire representatie in de computer.

  Getalsystemen   

Het woord 'hexadecimaal' wordt vaak afgekort als hex, hoewel dit 'zes' betekent.

Codering

Met een binair getal van vier bits kunnen de getallen 0 t/m 15 worden weergegeven, dus juist een hexadecimaal getal bestaande uit één (hexadecimaal) cijfer. Door steeds groepen van vier opeenvolgende bits in een binair getal als een hexadecimaal cijfer te schrijven ontstaat een hexadecimaal getal, dat voor ons overzichtelijker is dan de rij 0-en en 1-en. De rij 11000101011000100101110101110010 bijvoorbeeld is voor mensen praktisch onleesbaar. Daarom worden de cijfers in groepjes van vier (nibbles) gegroepeerd. Dat wordt dan 1100-0101-0110-0010-0101-1101-0111-0010. Ieder viertal wordt vervolgens in een hexadecimaal cijfer omgezet: C5625D72. Dit is veel overzichtelijker.

Programmeertalen

hexdecoctbin
0000000000 0000
0110010000 0001
0220020000 0010
0330030000 0011
0440040000 0100
0550050000 0101
0660060000 0110
0770070000 0111
0880100000 1000
0990110000 1001
0A100120000 1010
0B110130000 1011
0C120140000 1100
0D130150000 1101
0E140160000 1110
0F150170000 1111
10160200001 0000
11170210001 0001
641001440110 0100
FF2553771111 1111
1002564001 0000 0000

Om duidelijk te maken dat men een hexadecimale waarde bedoelt, worden vaak enkele tekens toegevoegd. Bovendien geldt in bijna elke programmeertaal de eis dat een waarde met een 'echt' cijfer begint (dus niet met A-F). Het hexadecimale getal 35 kan geschreven worden als '35x' of '35h', en in een programmeertaal als '0x35'. Zou men in een programmeertaal '35' schrijven, dan wordt dat decimaal opgevat.

Enkele voorbeelden:

  • ABCDh (begint met een letter, niet mogelijk in veel programmeertalen)
  • 0ABCDh (door een nul toe te voegen wordt dat probleem verholpen)
  • 0xABCD
  • $ABCD
  • x'ABCD'

Toepassing van het hexadecimale stelsel

Het hexadecimale stelsel wordt vrijwel alleen gebruikt door degenen die op laag niveau met computers werken. Dit is een gevolg van de binaire (tweetallige) werking van de computer en de opbouw en werking van de geheugens in de computer. Door de toepassing van hogere programmeertalen is kennis van het hexadecimale stelsel meestal geen directe noodzaak meer.

Het hexadecimale stelsel wordt onder andere gebruikt voor:

  • het aanduiden van kleuren in HTML als RGB-waarde. Zo is FFFFFF de waarde voor wit, en 000000 de waarde voor zwart.
    • 1e byte FF 00 00 is R is Rood. (#FF0000)
    • 2e byte 00 FF 00 is G is Groen. (#00FF00)
    • 3e byte 00 00 FF is B is Blauw. (#0000FF)
  • het weergeven van een MAC-adres zoals 00:0C:6E:D2:11:E6
  • het weergeven van een IP-adres (IPv6).
  • het bekijken van binaire bestanden (in hex-editors)

Notatie van binaire en hexadecimale getallen

Omdat men bij een binaire notatie de status van iedere bit duidelijk wil maken, worden binaire getallen getoond in een formaat met voorloopnullen. Bij hexadecimale notaties zijn voorloopnullen ook heel gebruikelijk. Het gaat hier dan om een code die minder duidelijk zou worden indien er geen nullen aan voorafgaan. Een voorbeeld hiervan is de RGB-waarde.

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.