跳到正文
BinaryTranslator.app

二进制翻译器

输入即可实时完成二进制与文字互转。免费、注重隐私,支持 emoji 和任何语言。

试试示例:

二进制翻译器使用方法

页面顶部的翻译器支持双向转换,不需要点任何按钮。只需三步:

  1. 输入或粘贴内容。在左侧输入框里输入文字或二进制代码。工具会自动识别你粘贴的是哪一种,你也可以手动选择「文字 → 二进制」或「二进制 → 文字」。
  2. 边输入边看结果。每输入一个字符,结果都会立即更新。文字转二进制时,还可以把输出切换成八进制、十进制或十六进制,选择分隔符,以及选用 UTF-8 或 ASCII 编码。
  3. 复制、下载或分享。一键复制结果(也可以按 Ctrl/⌘ + Enter),下载为 .txt 文件,或复制一个链接,打开后会恢复同样的转换内容。

如果有部分内容无法转换,翻译器会告诉你是哪一组、错在哪里,其余部分照常转换。结果下方的「逐字符拆解」会列出每个字符的码点和字节,每个比特都画成一个小格子,方便你手动核对。

什么是二进制翻译器?

二进制翻译器可以把由 0 和 1 组成的二进制代码转换成可读的文字,也可以把文字转换回二进制。每 8 个二进制位(比特)组成一个字节,一个字节表示 0 到 255 之间的一个数字;再通过 ASCII 或 UTF-8 这样的字符编码,把数字对应到字母、数字、标点、汉字和 emoji。

常见的用途有:解读一段用 0 和 1 写成的留言、做解谜或 CTF 题目、核对计算机课的作业,或者只是好奇自己的名字写成二进制是什么样。程序员也常用它查看文字背后的原始字节,比如找出看不见的字符,或排查乱码问题。

严格来说,二进制并不是一门「语言」,所谓翻译其实是解码。同样的比特按不同方式读取,含义也不同:01000001 可以是数字 65,可以是 ASCII 里的字母 A,也可以是一张图片的一部分。本工具把二进制当作文字来读,这也是绝大多数人使用二进制翻译器的目的。

二进制怎么转换成文字?

手动转换的方法是:把二进制按 8 位一组切开,把每组换算成十进制数,再到 ASCII 表里查出对应的字符。下面以01001000 01101001 为例。

字节中的每一位都有一个位权,从左到右依次是 128、64、32、16、8、4、2、1。某一位是 1,就加上它的位权;是 0 就跳过。

第一个字节 01001000
位权1286432168421
比特01001000
01001000 = 64 + 8 = 72 → “H”
第二个字节 01101001
位权1286432168421
比特01101001
01101001 = 64 + 32 + 8 + 1 = 105 → “i”

第一个字节加起来是 72,正是大写字母 H 的 ASCII 码;第二个字节是 105,对应小写字母i。连起来就是 “Hi”。翻译器做的就是同样的事,只是一次能处理成千上万个字节。

手动解码时有几个小技巧:如果某组不足 8 位,在左边补 0,比如 1001000 补成 01001000;如果二进制之间没有空格,从左往右每 8 位数一次;如果算出来的数大于 127,说明文字很可能是 UTF-8 编码,有些字符由多个字节组成,比如汉字。

文字怎么转换成二进制?

文字转二进制就是把上面的过程反过来:先找到字符的编码,再用位权从大到小把这个数写出来。

  1. 找到字符的编码,比如大写字母 A 是 65。
  2. 从最大的位权开始,看哪一位能放进去。64 小于 65,所以 64 这一位是 1,还剩 1。
  3. 继续往下比较,只有最后的 1 这一位能放进去,所以结果是 01000001。
  4. 对每个字符重复这个过程,空格也不例外,它的编码是 32(00100000)。

有意思的是,大写和小写字母只差一个比特:A 是 01000001,a 是 01100001,区别就在代表 32 的那一位。所以下面的字母表看起来非常整齐。

中文怎么转二进制?ASCII 与 UTF-8 的区别

ASCII 是上世纪 60 年代制定的字符编码,只定义了 128 个字符(编码 0–127):英文字母、数字、标点和少量控制字符,比如换行。每个 ASCII 字符正好占一个字节,而且第一位总是 0。ASCII 里没有汉字。

UTF-8 是如今网页通用的编码,它完全兼容 ASCII,所以纯英文文本在两种编码下完全一样。其他字符则用更多字节表示:带重音的拉丁字母一般占 2 个字节,汉字、日文和韩文一般占 3 个字节,大多数 emoji 占 4 个字节。每个字节开头的几位会告诉解码器,接下来几个字节属于同一个字符。

举个例子,「中」字的 Unicode 码点是 U+4E2D,用 UTF-8 编码后是三个字节:11100100 10111000 10101101。本翻译器默认使用 UTF-8,所以中文、emoji 和任何语言都能正确地来回转换。如果作业要求严格的 7 位 ASCII,可以把编码切换为 ASCII,工具会标出所有 ASCII 无法表示的字符。

英文字母二进制对照表(A–Z)

下表列出了 26 个英文字母大小写的 8 位二进制。大写字母的前三位是 010,小写字母是 011;后五位表示字母在字母表中的位置,A 是 1,Z 是 26。

英文字母的二进制(ASCII / UTF-8)
字母大写小写
A / a0100000101100001
B / b0100001001100010
C / c0100001101100011
D / d0100010001100100
E / e0100010101100101
F / f0100011001100110
G / g0100011101100111
H / h0100100001101000
I / i0100100101101001
J / j0100101001101010
K / k0100101101101011
L / l0100110001101100
M / m0100110101101101
N / n0100111001101110
O / o0100111101101111
P / p0101000001110000
Q / q0101000101110001
R / r0101001001110010
S / s0101001101110011
T / t0101010001110100
U / u0101010101110101
V / v0101011001110110
W / w0101011101110111
X / x0101100001111000
Y / y0101100101111001
Z / z0101101001111010

数字作为字符时,和它的数值并不相同。字符「0」的编码是 48,在文本中写作 00110000;字符「9」写作 00111001。

所有可打印字符(包括标点和符号)的二进制,请查看完整的 ASCII 二进制对照表。

常见词语的二进制写法

下面是大家经常查询的一些词语。表中的二进制都由翻译器同一套代码生成,你可以粘贴到上方验证。

常见词语的二进制(UTF-8)
文字二进制
你好11100100 10111101 10100000 11100101 10100101 10111101
中国11100100 10111000 10101101 11100101 10011011 10111101
我爱你11100110 10001000 10010001 11100111 10001000 10110001 11100100 10111101 10100000
谢谢11101000 10110000 10100010 11101000 10110000 10100010
Hello01001000 01100101 01101100 01101100 01101111
I love you01001001 00100000 01101100 01101111 01110110 01100101 00100000 01111001 01101111 01110101
OK01001111 01001011

10101、01011 这类短二进制是什么意思?

10101、01011 这样的短编码不满一个字节,单独无法对应一个字符。它们通常有两种读法:当作普通的二进制数时,10101 等于 21;而在很多解谜游戏里,5 位编码表示字母在字母表中的位置(A = 1,Z = 26),按这种读法 10101 就是字母 U。

短二进制编码对应的数字和字母
编码十进制字母(A = 1)补足为一个字节
1010121U00010101
0101111K00001011
1001018R00010010
010019I00001001
001106F00000110
1101026Z00011010

如果一段密文都是 5 位一组,先试试按字母位置来读;如果是 8 位一组,直接粘贴到翻译器里,它会按 ASCII 或 UTF-8 文字来解读。

计算机为什么使用二进制?

因为计算机硬件天然有两种稳定的状态:晶体管导通或截止,电压高或低,磁盘上的一个点朝这个方向或那个方向磁化。两种状态即使在有电气噪声的情况下也很容易区分,所以二进制既快、又便宜、又可靠。

计算机里存储的一切,最终都是比特:文字、数字、照片、音乐,乃至程序本身。区别只在于如何解读这些比特。文字就是其中一种情况:大家约定一张表(例如 ASCII 或 Unicode),规定哪个数字代表哪个字符。

比特、字节与其他进制

和二进制打交道时,经常会遇到这些概念:

  • 比特(bit):一个二进制位,0 或 1。
  • 半字节(nibble):4 个比特,正好对应一位十六进制数。
  • 字节(byte):8 个比特,可以表示 256 个值(0–255)。
  • 十六进制:以 16 为基数,用 0–9 和 A–F 表示。两位十六进制数是一个字节,所以 01001000 写成十六进制是 48。
  • 八进制:以 8 为基数,每位对应 3 个比特;字母 H 的八进制是 110。
  • 十进制:日常使用的 10 进制,H 就是 72。

程序员常用十六进制,因为它比二进制短得多,又能和比特整齐对应。本翻译器可以把文字输出为二进制、八进制、十进制或十六进制,也能把它们转换回文字。

常见问题

怎么把二进制翻译成文字?

把二进制粘贴到上方的翻译器里,文字会立即显示出来。每 8 个 0 和 1 是一个字节,对应一个字符。例如 01001000 01101001 翻译出来是 "Hi"。字节之间加不加空格都可以,连在一起的长串会被自动按 8 位切分。

01001000 01101001 是什么意思?

01001000 01101001 的意思是 "Hi"。第一个字节 01001000 等于十进制的 72,是大写字母 H 的 ASCII 码;第二个字节 01101001 等于 105,是小写字母 i 的 ASCII 码。

"I love you" 用二进制怎么写?

"I love you" 的二进制是 01001001 00100000 01101100 01101111 01110110 01100101 00100000 01111001 01101111 01110101。一共 10 个字节:每个字母一个,两个空格也各占一个,因为空格本身也是字符(00100000)。

中文可以转换成二进制吗?

可以。本工具默认使用 UTF-8 编码,一个常用汉字占 3 个字节。例如「中」的二进制是 11100100 10111000 10101101。英文字母只占 1 个字节,大多数 emoji 占 4 个字节。如果只用 ASCII 编码,就无法表示中文和 emoji。

为什么我的二进制转换不正确?

常见原因有:某一组不是 8 位、混进了字母 O 而不是数字 0,或者字节来自别的编码。本工具会指出具体是哪一组出错,其余部分照常转换。如果每组是 7 位,会按 7 位 ASCII 读取。

可以把文字转换成十进制、十六进制或八进制吗?

可以。选择「文字 → 二进制」,再把「输出」改为十进制、十六进制或八进制即可。反过来时,选择「二进制 → 文字」,并把「输入格式」设为对应的进制。同一个字节,比如字母 A,二进制是 01000001,十进制是 65,十六进制是 41,八进制是 101。

为什么每组二进制是 8 位?

计算机以字节为单位存储文字,一个字节有 8 个比特。8 个比特有 256 种组合,从 00000000(0)到 11111111(255),足以表示所有 ASCII 字符。补足前导零能让每个字节宽度一致,这样一长串比特才能被准确地切回字符。

二进制和摩尔斯电码有什么区别?

两者都只用两种符号,但原理不同。二进制给每个字符分配固定长度的 0 和 1,通常是 8 位;摩尔斯电码用长短不一的点和划表示字母,字母之间靠停顿分隔。二进制翻译器不能读取摩尔斯电码,反之亦然。

这个二进制翻译器免费吗?会保存我的内容吗?

完全免费,也不需要注册。转换全部在你的浏览器里完成,输入的内容不会上传到服务器。分享链接把文字放在网址 # 号后面的部分,浏览器不会把这部分发送给服务器。

手机上能用吗?

能用。翻译器支持手机、平板和电脑上的各种现代浏览器,也支持浅色和深色模式。页面加载完成后,转换不需要联网,因为全部计算都在你的设备上进行。