ASCII 转换器
将文本转换为 ASCII 码(十进制、十六进制、二进制、八进制),或将 ASCII 数值解码回可读文本。输入任意字符或字符串即可查看其 ASCII 表示形式,或粘贴 ASCII 码值即时解码。
ASCII 转换器
将文本转换为 ASCII 码,或将 ASCII 码解码回字符。
常见问题
什么是 ASCII?
ASCII(美国信息交换标准代码)是一种字符编码标准,为 128 个字符分配了唯一的数字值,包括字母(A-Z、a-z)、数字(0-9)、标点符号和控制字符。ASCII 于 20 世纪 60 年代初发展形成,并于 1968 年正式标准化,在此后数十年间一直是计算机和电信领域的主流字符编码。每个字符由 0 到 127 之间的 7 位整数表示,但通常以 8 位字节的形式存储。
如何将文本转换为 ASCII 码?
将文本转换为 ASCII 码时,需在 ASCII 码表中查找每个字符对应的十进制码值。例如,字母 A 的 ASCII 码为 65,B 为 66,小写 a 为 97,空格为 32。若需以十六进制表示,可将每个十进制码转换为十六进制:65 对应十六进制 41;以二进制表示,65 对应 01000001。大多数编程语言提供了内置函数来完成此转换,例如 Python 的 ord()、JavaScript 的 charCodeAt(),以及 C 语言中的整型强制转换。
空格的 ASCII 码是什么?
空格字符的 ASCII 码为十进制 32(十六进制 20,二进制 00100000)。空格(码值 32)是编号最小的可打印 ASCII 字符,码值 0-31 和 127 为控制字符,用于通信控制而非可打印符号。其中,水平制表符为码值 9,换行符(LF)为码值 10,回车符(CR)为码值 13。
ASCII 与 Unicode 有什么区别?
ASCII 用 7 位表示 128 个字符,涵盖英文字母、数字和常用符号。Unicode 是一个范围更广的标准,支持全球几乎所有书写系统的 149,000 多个字符,包括汉字、阿拉伯文、表情符号和数学符号。ASCII 字符在 Unicode 中占据完全相同的码位(0-127),因此所有 ASCII 文本均为有效的 Unicode。Unicode 最常用的编码方式为 UTF-8:ASCII 字符占用 1 个字节,其他字符则使用 2 至 4 个字节。
什么是 ASCII 控制字符?
ASCII 控制字符是码值为 0-31 的前 32 个字符以及码值 127(DEL)。这些字符不可打印,最初用于控制通信设备和终端。常见示例包括:NUL(0)——空字符,用于 C 语言字符串结尾;TAB(9)——水平制表符;LF(10)——换行符,Unix/Linux 系统用于行尾;CR(13)——回车符,旧式打字机和 Windows 行尾(CRLF)使用;ESC(27)——转义字符,用于启动终端转义序列;DEL(127)——删除字符。
ASCII 中大写字母和小写字母有何区别?
在 ASCII 中,大写字母 A-Z 的码值为 65-90,小写字母 a-z 的码值为 97-122。任意大写字母与其对应小写字母的码值差恰好为 32(例如 A=65,a=97;B=66,b=98)。在二进制中,这一差值对应第 5 位(权值为 32):大写字母第 5 位为 0,小写字母第 5 位为 1。这一优雅的设计意味着只需翻转一个二进制位即可切换大小写,使大小写转换在底层编程中极为高效。
什么是扩展 ASCII?
扩展 ASCII 是指使用码值 128-255 来扩展原始 128 个 ASCII 字符的各种 8 位字符编码。与普遍认可的标准 ASCII 范围(0-127)不同,码值 128-255 因编码方案而异。常见的扩展方案包括:ISO 8859-1(Latin-1)增加了西欧字符,如带重音的字母(é、ü、ñ);Windows-1252 与之类似,但还包含排版符号。在现代应用中,扩展 ASCII 已基本被 Unicode 取代。
ASCII 与 UTF-8 有什么关系?
UTF-8 在设计上与 ASCII 向后兼容。对于前 128 个码位(0-127),UTF-8 使用与 ASCII 完全相同的单字节编码。这意味着任何有效的 ASCII 文本无需修改即为有效的 UTF-8。对于码值超过 127 的字符,UTF-8 使用 2 至 4 字节的多字节序列,首字节表示序列长度。这种向后兼容性使 UTF-8 得以广泛推广,并成为互联网的主流编码,目前已覆盖超过 98% 的网页。
如何将 ASCII 码转换为文本?
将 ASCII 十进制码转换回文本时,在 ASCII 码表中查找每个数字对应的字符即可。例如,序列 72、101、108、108、111 拼写成 Hello(H=72、e=101、l=108、l=108、o=111)。对于十六进制输入,需先将每个十六进制值转换为十进制(或直接查表)。在编程中,可使用 Python 的 chr()、JavaScript 的 String.fromCharCode(),或在 C/C++ 和 Java 中将整型强制转换为字符类型。
换行符的 ASCII 码是什么?
与换行相关的 ASCII 控制字符有两个:换行符(LF,码值 10)和回车符(CR,码值 13)。Unix/Linux 和 macOS 单独使用 LF(\n)作为行尾符;Windows 使用 CR+LF 组合(\r\n,即码值 13 和 10);旧版 Mac OS 单独使用 CR。LF 源自打印机进纸一行的机械动作,CR 则是将打印头移回行首的动作——物理终端上两者均需使用。
什么是 ASCII?
ASCII(美国信息交换标准代码)是一种字符编码标准,将 128 个字符映射到 0–127 的数值。 它涵盖英文字母(大写和小写)、数字 0–9、标点符号,以及 33 个不可打印的控制字符, 例如制表符、换行符和回车符。
ASCII 于 20 世纪 60 年代初发展形成,并于 1968 年正式标准化。此后数十年间, 它一直是计算机和电信领域的主流编码,并构成了 UTF-8 等现代编码的基础。
使用方法
文本转 ASCII
- 选择「文本转 ASCII」标签页
- 在输入框中输入或粘贴任意文本
- 选择输出格式:十进制、十六进制、二进制或八进制
- 转换后的码值会即时显示,并附有逐字符转换详情
- 点击复制按钮复制结果
ASCII 转文本
- 选择「ASCII 转文本」标签页
- 输入以空格或逗号分隔的十进制 ASCII 码(例如:
72 101 108 108 111) - 解码后的文本会立即显示
- 点击复制按钮复制解码结果
输出格式说明
十进制 — 标准的十进制(基数 10)表示法。每个字符映射到 0–127 的数字。 这是大多数 ASCII 码表使用的格式,对人类最易读(例如 A=65,空格=32)。
十六进制 — 使用数字 0-9 和字母 A-F 的十六进制(基数 16)表示法。常用于编程、 内存转储和 URL 百分比编码(例如 A=41,空格=20)。
二进制 — 仅使用 0 和 1 的二进制(基数 2)表示法。每个 ASCII 字符占 8 位(1 字节), 标准 ASCII 字符的最高位始终为 0(例如 A=01000001)。
八进制 — 八进制(基数 8)表示法,历史上用于 Unix 文件权限和早期计算。 每个标准 ASCII 字符用 3 位八进制数表示(例如 A=101,空格=040)。
ASCII 码表快速参考
| 范围 | 类型 | 示例 |
|---|---|---|
| 0–31 | 控制字符 | NUL (0)、TAB (9)、LF (10)、CR (13)、ESC (27) |
| 32–47 | 标点与符号 | 空格 (32)、! (33)、" (34)、# (35) |
| 48–57 | 数字 | 0 (48) 至 9 (57) |
| 65–90 | 大写字母 | A (65) 至 Z (90) |
| 97–122 | 小写字母 | a (97) 至 z (122) |
| 127 | 控制字符 | DEL (127) |
ASCII 与 Unicode 的关系
ASCII 仅定义了 128 个字符,涵盖英文文本。Unicode 将此扩展到全球几乎所有书写系统的 149,000 多个字符。
UTF-8 是最常用的 Unicode 编码,设计上与 ASCII 完全向后兼容:前 128 个 UTF-8 码位 与 ASCII 完全相同,以单字节存储。ASCII 范围之外的字符在 UTF-8 中使用 2–4 个字节。
这意味着:
- 任何 ASCII 文件无需转换即为有效的 UTF-8
- ASCII 工具能正确处理任何 UTF-8 文本中的 ASCII 部分
- 非 ASCII 字符(如带重音字母、汉字、表情符号)需要使用 Unicode
常见应用场景
- 调试 — 在排查编码问题或协议实现时,检查字符串的精确字节值
- 网络协议 — HTTP、SMTP 等众多协议通过 ASCII 文本通信;理解 ASCII 码有助于 阅读原始协议数据
- 编程 — 在进行字符运算时(例如判断某字符是否为数字或字母),在字符与数值码之间转换
- 数据格式 — 理解 URL 中的百分比编码(例如空格=%20)以及 JSON 和 CSV 中的转义序列
- 学习教育 — 了解计算机如何在字节层面表示文本
使用技巧
- ASCII 中任意大写字母与对应小写字母的码值差恰好为 32——翻转第 5 位即可切换大小写
- 数字 0–9 的 ASCII 码为 48–57,因此用字符的 ASCII 码减去 48 即可得到该数字的数值
- 控制字符 NUL (0)、LF (10)、CR (13) 和 TAB (9) 在文件格式和网络协议中频繁出现—— 熟悉这些码值有助于阅读十六进制转储时避免困惑