ASCII 是计算机处理文本的底层编码,几乎无处不在。这份可交互的对照表列出了全部 128 个 ASCII 字符,以及每个字符对应的十进制、十六进制、八进制和二进制值。无论是开发者、学生,还是正在排查文本乱码问题的人,都能在这里几秒内查到需要的编码,而不用去翻文档。
如何使用
直接滚动浏览完整表格,或者用顶部的分类按钮筛选:控制字符、数字、大写字母、小写字母、标点符号。每一行都会显示字符本身、官方名称,以及四种进制下的数值。比如字母 A 是十进制 65(十六进制 41),空格是十进制 32(十六进制 20),换行符是十进制 10(十六进制 0A)。
什么是 ASCII?
ASCII(美国信息交换标准代码)发布于 1963 年,是在电报和电传打字机编码的基础上演变而来的。它为每个字符分配一个 7 位数字(0–127):0–31 和 127 是控制字符,比如当年用来驱动打印机的 TAB、LF、ESC;32–126 才是键盘上能看到的可打印字符。
由于 ASCII 只覆盖英文字母、数字和常用标点,后来的系统又搞出了各种 8 位“扩展 ASCII”来表示带重音符号的字母,最终发展到 Unicode。关键在于,Unicode 的前 128 个码点与 ASCII 完全一致——这就是为什么 ASCII 知识到今天仍然实用:UTF-8 文件、HTTP 头部、绝大多数源代码,骨子里都是 ASCII。
功能特性
- 完整收录全部 128 个 ASCII 字符
- 每个字符都有十进制、十六进制、八进制、二进制四种数值
- 按类别筛选:控制字符、数字、大写字母、小写字母、标点
- 控制字符附官方名称(NUL、BEL、ESC、DEL 等)
使用场景
- 排查文本问题: 找出让解析器报错的控制字符,比如 Windows 和 Unix 换行符不一致(CR 13 对 LF 10)的经典坑。
- 编程学习: 核对 ord() 或 charCodeAt() 返回的数值。
- 协议与数据格式: 查老式数据格式和条形码里用到的分隔符,比如 FS(28)、GS(29)。
- 命令行操作: 查 printf 或转义序列需要的八进制、十六进制值。
相关工具
常见问题
ASCII和Unicode有什么区别?
ASCII 用 7 位二进制表示 128 个字符(0-127)。Unicode 是一个大得多的标准,能表示全世界各种书写系统的超过 143,000 个字符。Unicode 的前 128 个码点与 ASCII 完全一致,所以 ASCII 可以看作 Unicode 的子集。
ASCII控制字符有什么用途?
控制字符(0-31 和 127)最初是用来控制打印机和电传打字机的。今天仍广泛使用的有:TAB(9)用于缩进,LF(10)用于换行,CR(13)用于回车,ESC(27)用于转义序列,DEL(127)用于删除。
如何在编程中查找字符的ASCII码?
大多数语言都有现成的方法:Python 用 ord('A')(返回 65),JavaScript 用 'A'.charCodeAt(0),C/C++ 可以把 char 强制转成 int,Rust 用 'A' as u8。不想写代码的话,直接查这张表更快。