Utilia

Tekst naar binair, hex en ASCII

Zet tekst om in binaire, hexadecimale, decimale of octale codes en terug, met UTF-8-bytes of Unicode-codepunten, eigen scheidingstekens en een tekentabel.

Tekens
0
Codepunten
0
UTF-8-bytes
0
Tekentabel
TekenCodepuntDecimaalUTF-8 (hex)UTF-8 (binair)

Zo gebruik je de omzetter van tekst naar binair

  1. Typ of plak je tekst in het invoervak en klik op Tekst → codes. Het resultaat verschijnt eronder en wordt bijgewerkt terwijl je typt.
  2. Kies de Notatie: Binair (grondtal 2), Hexadecimaal (grondtal 16), Decimaal (grondtal 10) of Octaal (grondtal 8).
  3. Laat bij Codes staan voor de optie UTF-8-bytes (compatibel met ASCII) staan voor de gebruikelijke omzetting van tekst naar binair, of kies Unicode-codepunten voor één getal per teken.
  4. Kies een Scheidingsteken (Spatie, Geen, Komma of Nieuwe regel) en vink Voorvoegsel toevoegen (0b, 0o, 0x) aan als je de codes wilt schrijven zoals programmeertalen ze verwachten.
  5. Andersom werkt het ook: plak de codes en klik op Codes → tekst. De tool raadt de notatie als je van richting wisselt, en je kunt die bij Notatie corrigeren.

Kopiëren kopieert het resultaat, en Resultaat als invoer gebruiken zet het resultaat in het invoervak en draait de richting om. Zo controleer je snel of de omzetting heen en terug klopt. De Tekentabel toont elk teken met zijn codepunt, zijn decimale waarde en zijn UTF-8-bytes in hex en binair.

ASCII, Unicode en UTF-8

Computers slaan tekst op als getallen. ASCII, vastgelegd in de jaren zestig, geeft een getal van 0 tot 127 aan de Engelse letters, cijfers, leestekens en een paar stuurtekens: “H” is 72, binair 01001000 en hexadecimaal 48. In ASCII is geen plaats voor é, ë, € of emoji, dus tegenwoordig gebruikt tekst Unicode, dat elk teken een codepunt geeft, geschreven als U+00E9 voor é.

UTF-8 is de manier waarop bijna elke webpagina en elk bestand die codepunten als bytes opslaat. De belangrijkste eigenschap is compatibiliteit: de 128 ASCII-tekens houden hun ene byte, dus “Hoi” geeft precies dezelfde binaire code in ASCII en in UTF-8. Andere tekens nemen 2 tot 4 bytes in: é is C3 A9 (twee bytes), € is E2 82 AC (drie) en 😀 is F0 9F 98 80 (vier). De tool meldt hoeveel tekens buiten ASCII vallen, en de tellers tonen het aantal Tekens, Codepunten en UTF-8-bytes. Die kunnen verschillen: 👍🏽 is één zichtbaar teken, opgebouwd uit twee codepunten en acht bytes.

Codes terug omzetten naar tekst

Bij het decoderen mogen codes gescheiden zijn door spaties, komma’s, puntkomma’s of regeleinden. Voorvoegsels zoals 0b, 0x, \x, U+ en HTML-entiteiten als H of H worden automatisch verwijderd. Binaire en hexadecimale bytes kun je ook zonder scheidingstekens plakken: 0100100001101001 wordt opgedeeld in groepjes van 8 bits, en c3a9 in paren hexcijfers.

De tool controleert elke code en vertelt je precies welke fout is: een cijfer dat niet bij het gekozen grondtal hoort, een byte boven 255, een groep die niet gelijk kan worden opgedeeld, of een codepunt boven U+10FFFF. Zijn de bytes geldige getallen maar geen geldige UTF-8 (bijvoorbeeld C3 gevolgd door 28), dan wordt de tekst toch getoond, met � op de plek van de kapotte reeks, en een melding legt uit waarom.

Voorbeelden

  • “Hoi” in binair: 01001000 01101111 01101001
  • “Hoi” in hexadecimaal: 48 6F 69
  • “Hoi” in decimaal: 72 111 105
  • “é” als UTF-8-bytes in hex: C3 A9; als codepunt: E9

Veelgestelde vragen

Wat is het verschil tussen ASCII en binair?

ASCII is een tabel die getallen aan tekens koppelt. Binair is gewoon een manier om die getallen met 0 en 1 te schrijven. Tekst naar binair omzetten betekent dus het getal van elk teken opzoeken en het in grondtal 2 schrijven.

Waarom neemt é 16 bits in plaats van 8?

In UTF-8 passen alleen de 128 ASCII-tekens in één byte. Letters met een accent hebben twee bytes nodig, dus é wordt 11000011 10101001. Met Unicode-codepunten is é het ene getal 11101001 (233).

Kan ik binaire code zonder spaties decoderen?

Ja, voor bytes in binair of hexadecimaal, zolang de lengte een veelvoud is van 8 bits of 2 hexcijfers. Decimale codes hebben een scheidingsteken nodig, tenzij elke code met precies 3 cijfers is geschreven.

Welke optie komt overeen met “text to hex” bij programmeren?

UTF-8-bytes in hexadecimaal. Dat geeft hetzelfde resultaat als een tekenreeks naar UTF-8 coderen in Python, JavaScript of de meeste andere talen.

Wordt mijn tekst geüpload?

Nee. De omzetting gebeurt helemaal in je browser; er wordt niets via het netwerk verzonden.