Wat is een talstelsel?

Een talstelsel, of radix, is het aantal cijfers dat een getallenstelsel gebruikt. Het decimale stelsel, dat we dagelijks gebruiken, heeft tien cijfers: 0 tot en met 9. Elke positie is tien keer zoveel waard als de positie rechts ervan. Computers werken met het binaire stelsel, dat alleen 0 en 1 gebruikt. Elke positie is daarin twee keer zoveel waard als de positie rechts ervan. Het octale stelsel, met de cijfers 0 tot en met 7, en het hexadecimale stelsel, met de cijfers 0 tot en met 9 en A tot en met F voor 10 tot en met 15, zijn compacte manieren om binair te schrijven: één octaal cijfer staat precies voor 3 bits en één hexadecimaal cijfer voor precies 4 bits. Een byte bestaat daarom altijd uit twee hexadecimale cijfers.

Hieronder staat hetzelfde getal in elk talstelsel:

Decimaal Binair Octaal Hexadecimaal
10 1010 12 A
42 101010 52 2A
255 11111111 377 FF
1000 1111101000 1750 3E8
65535 1111111111111111 177777 FFFF
-42 -101010 -52 -2A

Waar elk talstelsel wordt gebruikt

  • Binair: bits, vlaggen, bitmaskers en subnetmaskers, zoals 255.255.255.0, dat bestaat uit 24 enen gevolgd door 8 nullen.
  • Octaal: Unix-bestandsmachtigingen, zoals chmod 755, waarbij elk cijfer uit drie machtigingsbits bestaat.
  • Decimaal: alledaagse getallen.
  • Hexadecimaal: kleuren zoals #FF6600, bytewaarden, geheugenadressen, MAC-adressen en Unicode-codepunten zoals U+00E9.

Beschrijving van de tool

Met deze tool zet je gehele getallen om tussen binair, octaal, decimaal en hexadecimaal. Alle converters voor talstelsels hier werken op dezelfde manier, van de algemene converter voor talstelsels tot converters voor één specifiek paar, zoals van decimaal naar binair of van hexadecimaal naar decimaal: de tool begint met de talstelsels uit de naam en met de menu's Bron en Doel kun je elk van de vier kiezen. Typ of plak een getal en het resultaat verschijnt terwijl je typt, klaar om te kopiëren. Als een getal een cijfer bevat dat niet in het betreffende talstelsel voorkomt, zoals een 2 in een binair getal, verschijnt er een foutmelding. Met de wisselknop draai je de richting van de omzetting om.

Hoe het werkt

De tool leest het getal als een JavaScript BigInt: een geheel getal zonder maximale grootte. Daardoor worden 64-bits waarden en grotere getallen exact omgezet, zonder afronding: FFFFFFFFFFFFFFFF in hexadecimaal is 18446744073709551615 in decimaal. De tool accepteert:

  • Een minteken aan het begin, dat in het resultaat behouden blijft: -42 in decimaal is -101010 in binair.
  • De voorvoegsels die in code worden gebruikt: 0b voor binair, 0o voor octaal en 0x voor hexadecimaal. Zo wordt 0x1F omgezet naar 31.
  • Spaties en onderstrepingstekens tussen groepen cijfers, zoals 1111 0000 of 1_000_000.
  • Hexadecimale letters in hoofdletters of kleine letters. Resultaten worden in hoofdletters weergegeven.

Alleen gehele getallen kunnen worden omgezet. Bij een getal met een decimaalteken verschijnt er een foutmelding.