Getalstelsel-converter preview

Getalstelsel-converter

Converteer getallen tussen binaire (basis 2), octale (basis 8), decimale (basis 10) en hexadecimale (basis 16) stelsels.

Belangrijkste functies

  • Binary/Octal/Decimal/Hex
  • Live conversion
  • Hex letter support
  • Copy results

Guide

Getalbasisconversie is het proces van het uitdrukken van een waarde in het ene positionele cijfersysteem met behulp van een andere basis. De vier meest voorkomende bases in computing en wiskunde zijn binair (basis 2), octaal (basis 8), decimaal (basis 10) en hexadecimaal (basis 16). Elke programmeur, elektrotechnisch ingenieur en informaticastudent encounter deze systemen regelmatig. Deze gids legt uit hoe elke basis werkt, de conversiemethoden ertussen en praktische situaties waarin elke basis de juiste keuze is. Decimaal is het systeem dat je dagelijks gebruikt. Het heeft tien cijfers: 0 tot en met 9. Elke positie in een decimaal getal vertegenwoordigt een macht van 10. Het getal 5207 betekent 5 keer 1000, plus 2 keer 100, plus 0 keer 10, plus 7 keer 1. Dit positionele waardenconcept is van toepassing op elke basis. Het enige dat verandert is het aantal beschikbare cijfers en de macht die elke positie vertegenwoordigt. Het decimale systeem is vrijwel zeker geëvolueerd omdat mensen tien vingers hebben, wat tien een natuurlijke groepering maakt. Binair gebruikt twee cijfers: 0 en 1. Elke positie vertegenwoordigt een macht van 2. Het binaire getal 1101 betekent 1 keer 8, plus 1 keer 4, plus 0 keer 2, plus 1 keer 1, wat gelijk is aan 13 in decimaal. Computers werken binair omdat elektronische circuits twee stabiele toestanden hebben: aan en uit, hoge spanning en lage spanning. Elk stuk gegevens dat je computer verwerkt, van tekst tot video tot software-instructies, wordt uiteindelijk vertegenwoordigd als reeksen van 1-en en 0-en. Binaire getallen worden snel lang. Het decimale getal 255 is 11111111 in binair, acht cijfers voor wat decimaal in drie afhandelt. Daarom schrijven programmeurs zelden ruwe binaire getallen voor grote waarden. Ze gebruiken octaal of hexadecimaal als shorthand-notaties die netjes naar binair mappen omdat 8 en 16 beide machten van 2 zijn. Octaal gebruikt acht cijfers: 0 tot en met 7. Elk octaal cijfer komt overeen met precies drie binaire cijfers. Het octale getal 17 gelijk aan binair 001 111, wat decimaal 15 is. Octaal was historisch belangrijk in computing toen systemen architecturen gebruikten met woordgroottes deelbaar door 3 (zoals 12-bit-, 24-bit- en 36-bit-machines). Vandaag verschijnt octaal het meest in Unix/Linux-bestandsrechten. De rechtenwaarde 755 betekent dat de eigenaar kan lezen, schrijven en uitvoeren (7 = 111 in binair), terwijl groep en anderen kunnen lezen en uitvoeren maar niet schrijven (5 = 101 in binair). Het chmod-commando op Linux en macOS gebruikt octale getallen om bestandsrechten in te stellen, wat octale kennis relevant maakt voor elke systeembeheerder of ontwikkelaar die werkt op op-Unix-gebaseerde systemen. Hexadecimaal gebruikt zestien cijfers: 0 tot en met 9 en A tot en met F, waarbij A 10 vertegenwoordigt, B 11, C 12, D 13, E 14 en F 15. Elk hexadecimale cijfer mapt naar precies vier binaire cijfers. Dit maakt hex de geprefereerde shorthand voor binaire gegevens in moderne computing. De hex-waarde FF gelijk aan binair 1111 1111, wat decimaal 255 is. Een enkele byte (8 bits) is altijd representeerbaar als precies twee hex-cijfers, wat hex ideaal maakt voor het weergeven van geheugeninhouden, kleurwaarden, MAC-adressen en cryptografische hashes. Converteren van decimaal naar een andere basis gebruikt herhaalde deling. Om decimaal 200 naar binair te converteren, deel 200 herhaaldelijk door 2 en noteer de restwaarden. 200 gedeeld door 2 is 100 rest 0. 100 gedeeld door 2 is 50 rest 0. 50 gedeeld door 2 is 25 rest 0. 25 gedeeld door 2 is 12 rest 1. 12 gedeeld door 2 is 6 rest 0. 6 gedeeld door 2 is 3 rest 0. 3 gedeeld door 2 is 1 rest 1. 1 gedeeld door 2 is 0 rest 1. De restwaarden van onder naar boven lezen geeft 11001000. Dezelfde methode werkt voor elke doelbasis. Om 200 naar hex te converteren, deel door 16: 200 gedeeld door 16 is 12 rest 8, 12 gedeeld door 16 is 0 rest 12 (wat C is). Van onder naar boven lezen geeft C8. Converteren van een basis naar decimaal gebruikt de positionele-waarden-formule. Vermenigvuldig elk cijfer met zijn positionele macht en som de resultaten. Voor hex 2F3: 2 keer 256 (16 kwadraat) plus 15 keer 16 (F is 15) plus 3 keer 1 gelijk aan 512 plus 240 plus 3, wat 755 in decimaal is. Deze methode werkt voor elke bronbasis. Voor binair 101010: 1 keer 32 plus 0 keer 16 plus 1 keer 8 plus 0 keer 4 plus 1 keer 2 plus 0 keer 1 gelijk aan 42 in decimaal. Converteren tussen binair en hex is eenvoudig omdat elk hex-cijfer precies vier binaire cijfers is. Groepeer het binaire getal in blokken van vier beginnend rechts, opvullen met leidende nullen indien nodig. Binair 10110111 wordt 1011 0111, wat B7 in hex is. Andersom, vervang elk hex-cijfer door zijn vier-bit binaire equivalent. Hex A3 wordt 1010 0011. Deze directe mapping is waarom hex zo populair is in programmeercontexten. Converteren tussen binair en octaal volgt hetzelfde principe met groepen van drie. Binair 10110111 wordt 010 110 111 (opgevuld met een leidende nul), wat 267 in octaal is. Octaal 52 wordt 101 010 in binair. De drie-bit-groepering maakt octaal minder handig dan hex voor moderne 8-bit-byte-architecturen, vandaar dat hex octaal grotendeels heeft vervangen in de meeste programmeercontexten. Converteren tussen octaal en hexadecimaal heeft geen directe shortcut. De standaardbenadering is converteren via binair als tussenstap. Converteer het octale getal naar binair (elk octaal cijfer naar drie bits), groepeer vervolgens de binaire cijfers in vier-bit-blokken en converteer naar hex. Octaal 375 wordt bijvoorbeeld binair 011 111 101, hergroepeerd als 0 1111 1101, wat hex FD is. Via binair gaan voegt een stap toe, maar het proces is volledig mechanisch en snel met oefening. Breukgetallen in verschillende bases volgen dezelfde positionele logica maar met negatieve machten. In decimaal betekent 0,75 7 keer 0,1 plus 5 keer 0,01. In binair betekent 0,11 1 keer 0,5 plus 1 keer 0,25, wat gelijk is aan 0,75 in decimaal. Niet alle decimale breuken converteren naar eindige binaire breuken. De decimale waarde 0,1 in binair is 0,0001100110011... oneindig herhalend. Dit is de hoofdoorzaak van drijvende-komma-precisieproblemen in computing. Programmeertalen gebruiken voorvoegsels om getalbases te onderscheiden in broncode. In C, Java, JavaScript, Python en veel andere talen geeft 0b of 0B binair aan (0b1101), geeft 0o of 0O octaal aan (0o17) en geeft 0x of 0X hexadecimaal aan (0xFF). Getallen zonder voorvoegsel zijn decimaal. Sommige oudere C-code gebruikt een leidende nul voor octaal (017), wat een veelvoorkomende bron van bugs is wanneer iemand 010 schrijft en decimaal 10 verwacht maar octaal 8 krijgt. De strikte modus van JavaScript en moderne versies pakken dit aan door het expliciete 0o-voorvoegsel voor octaal te vereisen. Kleurcodes in webontwikkeling gebruiken uitgebreid hexadecimaal. De CSS-kleur #3A7BFF breekt neer naar 3A voor het rode kanaal (58 in decimaal), 7B voor groen (123) en FF voor blauw (255). Hex begrijpen laat je kleurwaarden direct lezen en aanpassen. Een iets donkerder blauw nodig? Verander FF naar E0. Een RGB-waarde van 128, 64, 32 naar hex converteren? Converteer elke component: 128 is 80, 64 is 40, 32 is 20, wat #804020 geeft. CSS ondersteunt ook shorthand-hex-kleuren waarbij elk kanaal één cijfer is: #F00 breidt uit naar #FF0000 (puur rood). Het alfa-kanaal in 8-tekens-hex-kleuren (#3A7BFFCC) voegt transparantie toe met behulp van dezelfde hex-representatie. Geheugenadressen en debugging gebruiken hexadecimaal als de standaardrepresentatie. Zie je een geheugenadres zoals 0x7FFF5FBFF8A0, dan is dat een 48-bit-waarde uitgedrukt als 12 hex-cijfers. Debuggers, hex-editors en geheugendump-hulpmiddelen tonen allemaal gegevens in hex omdat het compact is, direct naar binair mapt en netjes uitlijnt met byte-grenzen. Elk paar hex-cijfers is één byte, wat het gemakkelijk maakt bytes te tellen en grenzen te identificeren. Een hex-dump toont 16 bytes per regel, met elke byte weergegeven als twee hex-cijfers, naast de ASCII-tekenrepresentatie. Dit formaat is de standaard manier om binaire bestanden, netwerkpakketten en ruwe schijfgegevens te inspecteren. Netwerken vertrouwen op hexadecimaal voor MAC-adressen (48 bits, weergegeven als zes paren zoals A4:C3:F0:12:34:56) en IPv6-adressen (128 bits, weergegeven als acht groepen van vier hex-cijfers zoals 2001:0db8:85a3:0000:0000:8a2e:0370:7334). Hex begrijpen is essentieel voor netwerkconfiguratie en probleemoplossing. Subnetmaskers, uitgedrukt in CIDR-notatie, mappen direct naar binaire representaties die tonen welke bits het netwerk identificeren en welke de host. Cryptografische hashes produceren hexadecimale tekenreeksen van vaste lengte. Een MD5-hash is 32 hex-cijfers (128 bits). Een SHA-256-hash is 64 hex-cijfers (256 bits). Bij het verifiëren van een bestand-download door de hash te vergelijken met een gepubliceerde waarde, lees je hexadecimaal. Elk teken vertegenwoordigt 4 bits van de hash-uitvoer. Hash-waarden worden in hex weergegeven in plaats van decimaal omdat hex compacter is en direct mappen naar de binaire uitvoer van het hash-algoritme. Bitwise-bewerkingen in programmeren werken op binair niveau maar worden vaak uitgedrukt in hex voor leesbaarheid. Een bitmasker zoals 0xFF00 is duidelijker dan zijn decimale equivalent 65280 en compacter dan zijn binaire vorm 1111111100000000. Bitwise AND, OR, XOR en shift-bewerkingen zijn fundamenteel voor low-level-programmeren, apparaatstuurprogramma-ontwikkeling, protocolimplementatie en prestatieoptimalisatie. Binaire representatie begrijpen is een voorwaarde voor het effectief gebruiken van deze bewerkingen. Een shift naar links met 1 bit verdubbelt een waarde. Een shift naar rechts met 1 bit halveert deze (voor unsigned gehele getallen). AND met een masker extraheert specifieke bits. OR met een masker stelt specifieke bits in. XOR keert specifieke bits om. ASCII- en Unicode-tekenencodering mappen tekens naar numerieke codes die vaak in hex worden weergegeven. De letter A is 0x41 (decimaal 65). Een spatie is 0x20 (decimaal 32). URL-encodering gebruikt hex: %20 vertegenwoordigt een spatie, %3A vertegenwoordigt een dubbelepunt. Deze hex-waarden begrijpen helpt bij het debuggen van encoderingsproblemen, het parseren van binaire protocollen of het werken met ruwe gegevensstreams. UTF-8-encodering gebruikt bytereeksen van variabele lengte (1 tot 4 bytes) waarbij het binaire patroon van de leidende bits het byte-aantal aangeeft, wat binair begrip essentieel maakt voor het begrijpen van tekstencodering op byteniveau. Gehele getallen met teken in binair gebruiken een representatie genaamd two's complement. In een 8-bit two's-complement-systeem variëren de waarden van -128 tot 127. De hoogste bit is de tekenbit: 0 voor positief, 1 voor negatief. Het getal -1 wordt vertegenwoordigd als 11111111 in 8-bit binair (0xFF in hex). Het getal -128 is 10000000 (0x80). Om een getal te negateren in two's complement, keer alle bits om en tel 1 op. 5 in 8-bit binair is bijvoorbeeld 00000101. Omkeren geeft 11111010. 1 toevoegen geeft 11111011, wat -5 vertegenwoordigt. Two's complement is de standaard voor gehele getallen met teken in vrijwel alle moderne processoren. Het begrijpen voorkomt verwarring bij het debuggen van ondertekende rekenkunde, het lezen van geheugendumps of het werken met binaire protocollen. Drijvende-komma-getallen hebben ook een binaire representatie gedefinieerd door de IEEE 754-standaard. Een 32-bit float heeft 1 tekenbit, 8 exponentbits en 23 mantissebits. Een 64-bit double heeft 1 tekenbit, 11 exponentbits en 52 mantissebits. Dit is waarom drijvende-komma-rekenkunde verrassende resultaten kan produceren. De decimale waarde 0,1 kan niet exact worden vertegenwoordigd in binaire drijvende komma, net zoals 1/3 niet exact kan worden vertegenwoordigd in decimaal. Zie je dat 0,1 + 0,2 gelijk is aan 0,30000000000000004 in JavaScript, dan is de oorzaak binaire representatiebeperkingen. Speciale waarden omvatten positieve en negatieve oneindigheid, negatieve nul en NaN (not a number), elk met specifieke bitpatronen. Base64-encodering is een ander talstelsel dat veelvuldig wordt gebruikt in computing, in het bijzonder voor het encoderen van binaire gegevens als afdrukbare ASCII-tekst. Base64 gebruikt 64 tekens (A-Z, a-z, 0-9, +, /) om 6-bit-groepen gegevens te vertegenwoordigen. Het verschijnt in e-mailbijlagen (MIME-encodering), data-URI's in HTML en CSS, JWT-tokens en API-authenticatieheaders. Elke 3 bytes binaire gegevens worden 4 Base64-tekens, wat resulteert in ongeveer 33 procent grootte-toename. Base64 is geen encryptie. Het is een omkeerbare encodering gebruikt voor gegevenstransportcompatibiliteit. Binair-gecodeerde decimaal (BCD) is een hybride systeem waarbij elk decimaal cijfer wordt vertegenwoordigd door zijn 4-bit binaire equivalent, maar de cijfers niet worden gecombineerd tot één binair getal. Het decimale getal 42 in BCD is 0100 0010, wat verschilt van de pure binaire representatie van 42 (101010). BCD wordt gebruikt in financiële berekeningen, digitale klokken en andere toepassingen waar decimale precisie belangrijk is en binaire drijvende-komma-afrondingsfouten onacceptabel zijn. Sommige processoren bevatten BCD-rekeninstructies. Getalbasisconversie heeft toepassingen in gegevenscompressie, foutdetectiecodes en digitale elektronica. Compressie-algoritmes werken direct met binaire gegevens. CRC- (Cyclic Redundancy Check) en controlesom-berekeningen werken op binaire representaties. Digitaal circuitontwerp gebruikt binaire logische poorten en waarheidstabellen. Vloeiend kunnen bewegen tussen decimaal, binair, hex en octaal is een kernvaardigheid in al deze velden. Veelvoorkomende conversiefouten omvatten het verkeerd tellen van positionele waarden (vergeten dat posities beginnen bij macht 0, niet macht 1), het verwarren van octale en hex-voorvoegsels in code, het weglaten van leidende nullen in hex-bytes (A schrijven in plaats van 0A voor een byte-waarde) en het verkeerd toepassen van two's-complement-regels. Een andere veelvoorkomende fout is het uitvoeren van rekenkunde in de verkeerde basis, zoals 0x10 optellen en 10 verwachten terwijl het resultaat eigenlijk 16 in decimaal is. De WebRecast-getalbasisconverter elimineert deze fouten door conversies onmiddellijk af te handelen en het resultaat in alle vier bases tegelijk te tonen. Voor handmatige oefening, memoriseer de hex-waarden 0 tot en met F en hun 4-bit binaire equivalenten. Zodra je enkele hex-cijfers naar binair en terug kunt converteren zonder na te denken, worden grotere conversies een kwestie van die kennis cijfer-voor-cijfer toe te passen. Hex 0 is 0000, 1 is 0001, 2 is 0010, 3 is 0011, 4 is 0100, 5 is 0101, 6 is 0110, 7 is 0111, 8 is 1000, 9 is 1001, A is 1010, B is 1011, C is 1100, D is 1101, E is 1110 en F is 1111. Deze zestien-vermeldingen opzoektabel is het meest nuttige dat een programmeur kan memoriseren voor het werken met low-level-gegevens. Machten van 2 zijn het memoriseren waard tot ten minste 2^16 (65536). De reeks is: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536. Deze waarden verschijnen voortdurend in programmeercontexten. 1024 bytes is een kilobyte (technisch een kibibyte). 65535 (2^16 minus 1) is de maximale waarde voor een 16-bit unsigned geheel getal. 2147483647 (2^31 minus 1) is het maximale 32-bit signed geheel getal. Deze getallen onmiddellijk herkennen vertelt je over de binaire structuur erachter. Gegevensformaten in computing gebruiken machten van 2 en worden uitgedrukt in bytes. Een byte is 8 bits. Een kilobyte is 1.024 bytes (2^10). Een megabyte is 1.048.576 bytes (2^20). Een gigabyte is 1.073.741.824 bytes (2^30). Opslagfabrikanten gebruiken vaak machten van 10 in plaats daarvan (1 GB = 1.000.000.000 bytes), wat is waarom een 1 TB-schijf ongeveer 931 GiB toont in je besturingssysteem. De IEC-voorvoegsels (kibi, mebi, gibi) werden geïntroduceerd om deze dubbelzinnigheid op te lossen, maar de industrie gebruikt nog steeds beide conventies. De binaire basis van gegevensformaten begrijpen verklaart waarom deze getallen overal in computing verschijnen. Foutdetectie- en correctiecodes gebruiken uitgebreid binaire rekenkunde. Pariteitsbits voegen een enkele bit toe aan een gegevenswoord om het totale aantal 1-bits zelfs (even pariteit) of oneven (oneven pariteit) te maken. Hamming-codes gebruiken meerdere pariteitsbits op posities die machten van 2 zijn (1, 2, 4, 8, 16) om enkel-bit-fouten te detecteren en te corrigeren. CRC-codes gebruiken polynomiale deling in binair (GF(2)-rekenkunde, waar optelling XOR is) om controlesommen te genereren. Deze technieken zijn fundamenteel voor betrouwbare gegevensopslag en -transmissie. Booleaanse algebra, de wiskunde achter digitale logica, werkt binair. AND-, OR-, NOT-, XOR-, NAND- en NOR-poorten nemen binaire invoer en produceren binaire uitvoer. Waarheidstabellen sommen alle mogelijke invoercombinaties en hun uitvoer op. Karnaugh-kaarten en Booleaanse vereenvoudiging reduceren complexe expressies tot minimale poort-implementaties. Elke digitale schakeling, van een eenvoudige rekenmachine tot een moderne CPU, is gebouwd uit deze binaire logische poorten. Binair begrijpen is het startpunt voor het begrijpen hoe hardware werkt op het laagste niveau. Instructiesets en machinecode zijn binaire reeksen die de CPU direct uitvoert. Een x86-instructie zoals MOV EAX, 5 wordt gecodeerd als binaire bytes. Assemblagetaal biedt mens-leesbare mnemonics voor deze binaire instructies. Compileer je code in C, Java of een andere taal, dan produceert de compiler uiteindelijk binaire machine-instructies. Gecompileerde code bekijken in een hex-editor onthult de ruwe binaire (weergegeven als hex-bytes) die de processor uitvoert. Kwantumcomputing introduceert een ander paradigma met qubits die in superposities van 0 en 1 kunnen bestaan. Klassieke binaire computing gebruikt definite bits. Kwantumcomputing gebruikt waarschijnlijkheidsamplitudes. Echter, de uitvoer van een kwantumberekening wordt gemeten als klassieke binaire bits. De interface tussen kwantum- en klassieke computing gebruikt nog steeds traditionele getalbases en kwantumalgoritmes worden ontworpen en geanalyseerd met behulp van conventionele binaire wiskunde. De WebRecast-getalbasisconverter accepteert invoer in een van de vier bases en voert de equivalente waarde uit in alle andere. Typ een decimaal getal en zie zijn binaire, octale en hex-representaties. Plak een hex-kleurcode en zie zijn binaire vorm. Vul een binaire tekenreeks uit een datasheet in en ontvang de decimale waarde. De conversies gebeuren in real-time terwijl je typt, wat het snel maakt om te verkennen hoe waarden over bases relateren. Gebruik het naast je code-editor, debugger of data-analysehulpmiddelen wanneer je snel en nauwkeurig tussen talstelsels moet bewegen.

Veelgestelde vragen

What bases are supported?

Binary (2), Octal (8), Decimal (10), and Hexadecimal (16).

Gerelateerde gidsen

Gerelateerde WebRecast-secties