arrow_backTerug naar veldaantekeningen
COMPUTER SCIENCE Gepubliceerd 5 Aug 2026

Binair, Hex en Gegevenseenheden Uitgelegd

Een praktisch naslagwerk van binaire, hexadecimale en gegevenseenheidsconventies gebruikt in programmering, netwerken en forensisch werk.

Elke byte die je in een hex editor inspecteert, elk subnetmasker dat je berekent, elke bestandsgrootte die een tool rapporteert hangt af van een kleine set getalsystemen en eenheidsconventies. Als je dit fout doet, zul je een buffergrootte verkeerd inschatten, een geheugenopstelling verkeerd lezen, of met een collega in discussie gaan over of 1 KB 1000 of 1024 bytes is.

Binair: het getalstelsel waar elke computer werkelijk mee werkt

Binair is grondtal 2 — alleen 0 en 1. Een enkel binair cijfer is een bit. Groepeer 8 bits samen en je krijgt een byte, die 256 verschillende waarden kan vertegenwoordigen (0 tot en met 255 zonder teken, of -128 tot en met 127 met teken twee's complement).

Wanneer je 01001000 ziet is dat 72 in decimaal, wat toevallig de ASCII-code is voor 'H'. Handmatig converteren is gewoon het optellen van machten van 2 vanaf de rechtse bit: 2^6 + 2^3 = 64 + 8 = 72. Tools zoals python3 -c "print(bin(72))" of xxd op een bestand doen dit meteen, maar het begrijpen van de wiskunde is belangrijk wanneer je een bitmask reverse-engineert of vlagwaarden in een TCP-header uitwerkt.

Hexadecimaal: de verkorting van binair

Hex is grondtal 16, met getallen 0-9 en letters A-F. Het bestaat omdat binair onleesbaar is op schaal en decimaal niet schoon aansluit op byte-grenzen. Één hex-cijfer vertegenwoordigt precies 4 bits, dus twee hex-cijfers vertegenwoordigen één volledige byte — 0x00 tot 0xFF dekt alle 256 bytewaarden af zonder verspilling.

Dit is waarom hexdumps de standaard zijn in tools zoals xxd, hexdump -C of het geheugenweergave van een disassembler. Wanneer je 0x4D 0x5A aan het begin van een bestand ziet, is dat de MZ-header die een Windows PE-executable identificeert. Geheugen-adressen, kleurcodes (#FF5733), MAC-adressen en IPv6-adressen worden conventioneel allemaal in hex geschreven omdat het zo schoon aansluit op de onderliggende byte- en nibble-structuur.

Hex naar decimaal converteren: 0x4D = (4 × 16) + 13 = 77. In Python brengt int('4D', 16) je daar zonder handmatige wiskunde, en hex(77) gaat de andere kant op.

Waar binair, decimaal en hex werkelijk in de praktijk samenkomen

IP-adressen zijn een goed voorbeeld van alle drie bij elkaar. Een IPv4-adres zoals 192.168.1.1 zijn eigenlijk vier bytes: 11000000.10101000.00000001.00000001 in binair, of C0.A8.01.01 in hex. Subnetting-wiskunde — bepalen of twee adressen op hetzelfde netwerk staan — is fundamenteel binaire AND-bewerkingen tegen een subnetmasker, hoewel we alles in gepunteerde decimaal schrijven voor gemak.

In digitaal forensisch onderzoek en malware-analyse vertaal je voortdurend tussen deze representaties. Een disassembler toont opcodes in hex, maar de CPU voert raw binair uit, en registerwaarden worden vaak geïnterpreteerd als decimale offsets of ASCII-strings afhankelijk van context. Weten dat 0x41 zowel het getal 65 als het ASCII-teken 'A' is, is het soort patroonherkenning dat handmatige analyse aanzienlijk versnelt.

Gegevenseenheden: het 1000 versus 1024-probleem

Dit is waar mensen werkelijk tegen aanlopen. Opslagfabrikanten, bestandssystemen en besturingssystemen zijn het niet altijd eens over wat een

Geschreven met AI-ondersteuning, herzien en gepubliceerd door Michal Pilch (CISSP), Korra Studio.

Klaar om verder te gaan?

Dit is één aantekening uit de kennisbasis van Korra Studio — het platform koppelt elk onderwerp aan 1-op-1 mentoring.

Gratis beginnenarrow_forward