ASCII 码表
输入字符查码位,或输入码位查字符,含控制字符说明。
标准 ASCII 是七位编码,只有 0–127 共 128 个码位:33 个控制字符(0–31 以及 127 的 DEL)负责换行、回车、响铃、转义这类不可打印的控制功能,剩下 95 个是可打印字符,从 32 的空格排到 126 的波浪号。每个码位同时给出十进制、十六进制、八进制、二进制和字符本身,控制字符则附上缩写名、英文原名与中文说明(例如 10 是 LF 换行、27 是 ESC 换码)。
输入框留空时按上方视图输出整张表,输入内容后进入查询模式:既可以直接粘贴字符(逐个成行,一个 emoji 会按码点给出并说明它超出了 0–127),也可以输入码位,支持十进制以及 0x、0o、0b、U+ 前缀,多个值用空格、逗号或换行分隔。所有对照都在浏览器本地查表完成,输入不会发送到服务器。
ASCII 码表怎么用
- 浏览整张码表:输入框留空,用视图切换「可打印 32–126」「0–127」「控制字符」「扩展 128–255」四种范围。
- 按字符查码位:直接粘贴文本,每个字符占一行;想查制表符、换行这类看不见的字符,写成 \t、\n 或 \x09。
- 按码位查字符:输入 65、0x41、0o101、0b01000001、U+20AC 任意写法,多个值用空格或逗号分开即可。
常见问题
128–255 算不算 ASCII?为什么同一个字节在不同地方显示成不同字符?
不算。ASCII 的定义域只有 0–127,第 8 位(128–255)是各家 8 位编码自己占用的区域。128–159(0x80–0x9F)分歧最大:标准 ASCII 里未定义;ISO/IEC 8859-1(Latin-1)把这些位置原样保留为 ECMA-48 的 C1 控制字符(如 0x85 NEL、0x9B CSI);Windows-1252 又把其中大部分换成 € ‚ „ … – — ™ 等印刷符号,只剩 0x81、0x8D、0x8F、0x90、0x9D 五个位置仍然空着。同一个字节 0x80,在 Latin-1 里是不可打印的控制字符,在 Windows-1252 里就是欧元符号 €,这正是网页乱码的根源。160–255 在两种编码里完全一致。
为什么 9、10、13 这些字符看不见却各占一格?
它们是控制字符:9 是 HT 水平制表、10 是 LF 换行、13 是 CR 回车,只在设备或文本流里起控制作用,没有对应的图形。表里用 ^I、^J、^M 这种控制记法(caret notation)表示它们的可见形式。换行的平台差异也来自这里:Unix 与 macOS 用单个 LF,Windows 用 CR+LF,旧 Mac 用单个 CR,跨平台读写文件最容易在这里出问题。
输入中文或 emoji 会怎样?
工具按 Unicode 码位回答:先给出码位(例如「你」是 U+4F60、😀 是 U+1F600)、各进制写法与字符本身,并明确提示它超出了 ASCII 的 0–127。码位在 U+10000 以上的(emoji 基本都在这里)在 UTF-16 即 JavaScript 字符串里要占两个码元,也就是一个代理对,所以「字符数」和「字符串长度」会不相等,表里会把这对码元一并列出。
对应功能编号 #15无需安装,手机端同样可用按 Ctrl + K 换工具