不同类型的编码方案来表示数据
任何基于文本的数据都由计算机以位(一系列 1 和 0)的形式存储,并遵循指定的编码方案。编码方案是一个标准,它告诉用户的机器哪个字符代表哪个字节集。指定使用的编码方案非常重要,因为没有它,机器可能会将给定的字节解释为与预期不同的字符。
例如: 0x6B 在 ASCII 中可能被解释为字符“k”,但在不太常用的 EBCDIC 编码方案中被解释为字符“,”。
- ASCII(美国信息交换标准代码): ASCII 可能被认为是使用最广泛的编码方案。 ASCII 由美国标准协会开发,于 1963 年作为 ASA X3.4-1963 引入。它有 128 个字符的定义 - 0x00 到 0x7f,由 7 位表示。
在 ASCII 格式 -Characters Decimal Hexadecimal 0-9 48-57 30-39 A-Z 65-90 41-5A a-z 97-122 61-7A 十六进制的其余部分用其他特殊字符和标点符号填充。
- UTF-32(Unicode 转换格式 32 位): UTF-32 是一种使用 4 个字节来表示一个字符的编码方案。它是一种定长方案,即每个字符总是用 4 个字节表示。它用于表示 Unicode 的所有 1、112、064 码点。
由于该方案的空间要求较大,后来开发的更高效的方案使其过时。 - UTF-16(Unicode 转换格式 16 位): UTF-32 是一种编码方案,使用 2 或 4 个字节来表示一个字符。它可以表示 Unicode 的所有 1、112、064 码位。
UTF-8(Unicode Transformation Format 8-bit): UTF-8 于 1993 年推出,是一种编码方案,要求每个字符至少用 1 个字节表示。它可以代表所有 Unicode 的代码点。
UTF-8 是 ASCII 的超集,前 128 个字符,从 0x00 到 0x7f,与 ASCII 相同。因此,这种 UTF 方案与 ASCII 反向兼容。
它是一种可变长度编码,用 1、2、3 或 4 个字节来表示一个字符。
为了指示两个(或多个)连续字节是同一字符的一部分,或者表示两个不同的字符,每个字节的前几位用作指示符。- ISCII(Indian Script Code for Information Interchange):它是一种编码方案,可以容纳各种印度字符。它是一个 8 位方案。
前 128 个字符与 ASCII 相同,仅使用下一个 128 位空间来表示 ISPII 特定字符。