🤖 AI文章摘要 gemini-2.0-flash-lite

这篇文章介绍了字符编码与存储编码。计算机只能处理二进制数字,因此需要将自然语言字符编码为二进制。字符编码是将字符转化为二进制数字的过程,而存储这种对应关系的表称为字符集。存储编码则是对字符编码产生的二进制值进行进一步编码以适应存储。

文章对比了ANSI(ASCII)编码集和UCS(通用字符集)。ASCII使用1个字节编码128种字符,ANSI扩展为255种。UCS旨在解决单字节编码空间不足的问题,早期采用2字节的UCS-2(早期UNICODE)进行编码和存储,但空间仍有限;后期采用4字节的UCS-4,存储空间大。目前广泛使用的是UTF-8存储编码,这是一种可变长编码,英文占1字节,中文占3字节。

此外,文章还提到了转义字符。由于ASCII码表数字对人类记忆不便,转义字符用于解决此问题。通过特定符号(如'\')可以将后续字符解释为特定含义并存储其ASCII值,例如'\n'代表制表符,其ASCII值为10,不同于普通字符'n'的ASCII值110。

字符编码与存储编码

  计算机只能处理二进制数字, 为了满足计算机处理自然语言的需求, 需要对自然语言的字符编码成二进制数字.

  • 字符编码: 将字符编码成二进制数的过程称为字符编码, 而存储字符与二进制值关系的表叫做字符集.
  • 存储编码: 将字符编码产生的二进制值再进行编码, 使之适用于存储的过程叫做存储编码

ANSI(ASCII)编码集

  ASCII是美国信息交换标准代码, 字符编码方式为1个字节编码128种字符, 存储编码方式为1字节直接存储.   ANSI则扩展ASCII使用1个字节的其他数值编码其他字符, 扩展到255个字符. 一般ANSI和ASCII同等对待.

UCS字符集

  UCS(Universal Char Set), 即通用字符集, 包含世界各国的文字和符号, 应对单字节编码带来的字符空间有限问题.
  早期的UNICODE即UCS-2编码方式集采用2字节编码, 存储方式为2字节直接存储, 得到普及但是字符空间有限
  后期的UNICODE即UCS-4编码方式采用4字节编码, 存储方式也是4字节直接存储, 但存储空间较大没有得到普及 UNICODE中广泛采用的是如今的UTF-8存储编码, UTF-8是可变长编码, 一个英文占据1字节, 一个中文占据3字节.

转义字符

  ASCII码表虽然用0-255的数字表示特定字符, 但对人类记忆有一定的困难. 转义字符就是为了解决这个问题而产生的.
  一个字符串中, 一个字符使用其ASCII值存储, 但若通过 ‘'就可以转译为其他字符并存储其ASCII值 例如: ’n’输出的ASCII值是110,而’\n’输出的ASCII值为10,是制表符.