itslabtime.com

信息 · 计算机 · 数据表示

二进制与字符编码

一个位序列的意义取决于其如何被解释。相同的 0 和 1 既可以表示整数、字符,也可以表示颜色。

相关实验:二进制与字符编码 →
二进制与字符编码
二进制与字符编码实验场景 →

意义与机制

这是一种表示数字的方式,其中每个数字都是 2 的幂。 采用 n 位,可以表示 2ⁿ 种模式,并且无符号整数的范围是从 0 到 2ⁿ-1。

Unicode 赋予字符代码点,而 UTF-8 将这些代码点编码为字节序列。一个字符并不总是占用一个字节。

关系与条件

一个未签名的整数被读取为 N=Σbᵢ2ⁱ。UTF-8 根据码点,使用 1–4 字节,因此字符串的字节数可能与字符数不同。

屏幕上出现的单位可以由多个代码点组成。 具有分隔符和整数值的单位,采用与其它字符编码不同的解释规则。

观察实验中需要注意的事物

相同的位信息在不同的解释下,传达不同的信息。

整数是无符号的 8 位。 UTF-8 将选定的 Unicode 字符编码为实际字节。

关键关系与符号

N = Σbᵢ2ⁱ · count = 2ⁿ

符号及公式中使用的单位
符号含义单位
bᵢi-th 位0 或 1
byte8 位组8 bit
代码点Unicode 字符标识整数标识

工作实例

是否 UTF-8 的每一个字符占用一个字节?

根据字符而异 · 相同的比特在不同的解释下,传达不同的信息。

常见误解

  • 仅知道一个比特序列是8位,并不总是能够确定它代表的字符。

通过实验探索这个概念

参考文献

OpenStax ·《计算机科学导论》(英文)