跳到正文
BinaryTranslator.app

文字转二进制

输入任意文字,实时得到二进制代码。英文、数字、中文和 emoji 都支持,还能自选字节之间的分隔方式。

试试示例:

文字转二进制的原理

文字转二进制分两步:先用字符编码把每个字符变成数字,再把每个数字写成以 2 为底的 8 位字节。字母 H 的编码是 72,72 写成二进制就是 01001000。

把数字写成二进制,就是把它拆成 2 的幂之和:128、64、32、16、8、4、2、1。72 = 64 + 8,所以 64 和 8 这两位是 1,其余是 0。开头的 0 要保留,让每个字节都正好是 8 位,这样解码时才能准确地切回字符。

本工具使用网页通用的 UTF-8 编码。英文的结果和 ASCII 完全相同;中文等其他字符会占 2 到 4 个字节,所以转换出的二进制总能完整还原成原文。

中文名字怎么转成二进制?

在上方输入你的名字,复制结果即可。以「李华」为例,每个汉字在 UTF-8 中占 3 个字节:

「李华」的二进制
汉字码点二进制(UTF-8)
李U+674E11100110 10011101 10001110
华U+534E11100101 10001101 10001110

英文名则是每个字母一个字节,而且区分大小写:大写字母以 010 开头,小写字母以 011开头。名和姓之间的空格也是字符,对应 00100000。

每个字符占几个字节?

在 UTF-8 中,不同字符占用的字节数不同,所以输入框上方显示的字节数可能比字符数多。

不同字符的 UTF-8 长度
字符字节位数二进制
A1801000001
é21611000011 10101001
中32411100100 10111000 10101101
😀43211110000 10011111 10011000 10000000

如果作业要求「ASCII 二进制」,把编码切换为 ASCII 即可。此时每个字节都以 0 开头,汉字、é、emoji 等 ASCII 无法表示的字符会被逐一标出。

如何选择分隔符和输出格式?

「分隔符」决定字节之间用什么隔开。空格最容易阅读,但有些谜题或程序需要别的格式:

  • 空格:01001000 01101001
  • 无:0100100001101001,连成一整串
  • 逗号:01001000,01101001,方便粘贴进表格或代码
  • 换行:每行一个字节,适合较长的内容

「输出」用来切换进制。同样是 “Hi”,十六进制是 48 69,十进制是 72 105。程序员偏爱十六进制,因为两位十六进制数正好是一个字节。

文字转二进制的常见用途

  • 礼物和纪念品:把名字或纪念日写成二进制,做成手链、杯子或十字绣,每个 0 和 1 对应一颗珠子或一针。
  • 解谜和密室游戏:把线索藏成二进制,让玩家用二进制转文字工具解开。
  • 计算机课作业:核对手算的结果,借助逐字符拆解看清每一步。
  • 编程调试:查看字符串的真实字节,找出隐藏字符或乱码问题。

常见问题

怎么把自己的名字写成二进制?

在上方输入名字,然后复制结果。英文名每个字母是一个 8 位字节,大小写不同结果也不同;中文名每个汉字一般是 3 个字节,共 24 位。

每个字符占多少位?

英文字母、数字和标点占 8 位(1 个字节)。在 UTF-8 中,带重音的字母占 16 位,汉字占 24 位,大多数 emoji 占 32 位。

空格也会转换成二进制吗?

会。空格是编码为 32 的字符,对应 00100000。如果省略空格,解码时单词就会连在一起。

可以不加空格,或者输出十六进制吗?

可以。把「分隔符」设为「无」可以得到连续的一整串,也可以选逗号或换行;把「输出」改为十六进制、十进制或八进制即可切换进制。