Binary Translator

One input per line. Output is numbered to match the input order.
Pinned tools are listed in your favourites on the home page.Copies a link to this tool that carries your current input, so it opens ready to run.Gives you an iframe snippet for putting this tool on your own site.

Conversion runs on UTF-8 bytes, so an accented letter is two bytes and an emoji is four — exactly what xxd -b would print. Nothing is uploaded; the whole conversion happens in this tab.

Ctrl+Enter Run  · Ctrl+Shift+C Copy  · Esc Clear

Understand Binary Translator

这个翻译器把文本显示为计算机实际存储的那些 0 和 1,也能把一串二进制数字变回文本。

How it works

文本按 UTF-8 编码,每个字节写成八位二进制数字,最高位在前:A 的码点是 65,即 01000001。ASCII 之外的字符占用不止一个字节,因此 é 变成 11000011 10101001 两组,而一个 emoji 变成四组。反向读取二进制时,数字每八位取一组,得到的字节按 UTF-8 解码。

When to use it

  • 教学或学习字符、字节和比特之间到底是什么关系。
  • 阅读硬件数据手册或以二进制记录字段的协议规范中的位模式。
  • 确认一个你预期为 0x41 的字节,携带的确实是你以为的那个位模式。
  • 解码某人留在日志行、谜题或提交信息里的二进制字符串。

Watch out for

  • 一个字符的二进制形式,只有在编码已知时才有意义。同一个字母在 UTF-8 中是一个字节、在 UTF-16 中是两个,因此由其中一种产生的位串,按另一种解码不会得到正确结果。
  • 前导零是字节的一部分。1000001 只有七位且有歧义;01000001 才是一个字节——请按八位分组。
  • 二进制是一种表示形式,不是密码。用 0 和 1 写出来的文本,可读性与原文完全相同。

Frequently Asked Questions

如何把二进制翻译成文本?

把二进制按 8 位分组,把每组读成 0 到 255 的数字,然后把这些字节按 UTF-8 解码。在上方粘贴二进制,工具做的正是这件事;若字节序列不是合法的 UTF-8,它会明确告诉你,而不是显示一堆问号。

如何把文本转换成二进制?

每个字符会被编码成一个或多个 UTF-8 字节,每个字节写成八位二进制数字。纯 ASCII 字母占一个字节,带重音的字母占两个,多数中日韩字符占三个,而 emoji 每个占四个字节。

为什么我的 emoji 变成了 32 位二进制数字?

emoji 是一个字符,却是四个 UTF-8 字节,而每个字节是八位——因此是 32 位数字。那些使用 JavaScript 字符码而不是 UTF-8 字节的工具,会把 emoji 拆成两个残缺的一半,从而无法正确转换回来。

How to Use Binary Translator

  1. Paste or type your input in the input area above.
  2. The tool processes your input automatically or click Run.
  3. Copy or download the result using the action buttons.
  4. Use Ctrl+Enter to run quickly from the keyboard.