Menu
CoddyTech

ASCII 与十六进制

本课属于 Coddy Assembly 学习旅程的“基础知识”单元。第 13 课,共 45 课。

计算机只能理解数字。那么,它们是如何存储像 'A'、'b' 或 '?' 这样的字母的呢?

答案是 ASCII(美国信息交换标准代码)。ASCII 是一张为每个字符分配一个数字的表。

ASCII 的工作原理:

字符ASCII 数字(十进制)ASCII 数字(十六进制)
'A'650x41
'B'660x42
'C'670x43
'a'970x61
'b'980x62
'0'480x30
'1'490x31
' '(空格)320x20
'\n'(换行符)100x0A
'\0'(空值)00x00

需要记住的重要 ASCII 值:

字符十六进制用途
'A'0x41大写字母从这里开始
'a'0x61小写字母从这里开始
'0'0x30数字从这里开始
空格0x20用于分隔单词
换行符(\n)0x0A移动到下一行
空字符(\0)0x00字符串结束标记

注意这个规律:

规律示例
大写字母 A-Z 连续排列'A'=65, 'B'=66, 'C'=67...
小写字母 a-z 连续排列'a'=97, 'b'=98, 'c'=99...
数字 0-9 连续排列'0'=48, '1'=49, '2'=50...
小写字母 = 大写字母 + 32'a' (97) = 'A' (65) + 32

字符串在内存中的存储方式:

带换行符的单词“Hi”存储如下:

字符十六进制二进制
'H'0x4801001000
'i'0x6901101001
'\n'0x0A00001010

在汇编语言中,你可以这样写:db 'Hi', 0x0A

为什么汇编需要用到这个:

在 data.asm 中定义字符串时,你是在内存中存储 ASCII 码。打印字符串时,操作系统会读取这些 ASCII 码,并显示对应的字符。

亲手试试

这节课没有代码挑战。

quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: Assembly 在线编辑器

查询任意字符的编码: ASCII 转换器