Skip to content
yutils
Example

Input (text → hex)

yutils 👋

Output

79 75 74 69 6c 73 20 f0 9f 91 8b

Note

Each byte appears as two hex digits. UTF-8 encoded — Korean characters and emoji span multiple bytes. Round-trip supported.

Usage / FAQ

When to use

  • Analyze binary file hex dumps while debugging
  • Interpret network packets or embedded-system data
  • Inspect the exact byte sequence behind a UTF-8 character
  • Convert hashes or encrypted bytes into readable text
  • Distinguish raw byte hex from CSS color hex codes

FAQ

Q.Are separators like spaces and colons supported?
A.Yes. `79 75`, `79:75`, and `7975` all decode to the same bytes. The `0x` prefix is also supported via an option.
Q.Why do Korean characters expand to multiple bytes?
A.That's UTF-8. Latin letters are 1 byte, Korean characters are typically 3, emoji are usually 4. Everything outside ASCII (0x00-0x7F) takes at least 2 bytes.
Q.Base64 vs hex?
A.Both are text encodings for binary data. Hex is human-readable but doubles the size (200%). Base64 inflates by only ~33% but has a denser alphabet. Hex wins for debugging; Base64 wins for transport.
Fun facts
  • The word 'hexadecimal' was settled by IBM in 1962. Before that the same concept went by 'sexadecimal' (from Latin sexa, six). IBM picked the Greek/Latin hybrid hex- + -decimal to dodge the awkward 'sexa-' prefix — a famously incorrect mash-up that etymologists love to point out.

    Wikipedia — Hex etymology
  • IBM System/360 (1964) locked in the convention of using A–F for 10–15. Before that, systems disagreed on what came after 9 — variants like `0-9 + u-z` or special symbols existed in the wild.

    Wikipedia — IBM System/360
  • One hex digit is exactly 4 bits (a nibble) — two hex digits = one byte. That clean mapping is why hex became the standard for computer memory, colors (`#FF00FF`), and hash notation. Octal (3 bits) doesn't divide cleanly into 8-bit bytes, which is why it slowly fell out of use.

    Wikipedia — Nibble