比特(bit,binary digit 的缩写)是数字数据的单位,只能取两个值之一,通常写作 0 和 1。在计算机科学中,比特构成数字计算机所用的基本表示形式。在信息论中,比特也是以二为底的对数所定义的信息量和不确定性的度量单位。这两种含义相互关联,但并不相同:一个存储的二进制位不一定包含一比特不可预测的信息。(cs.cornell.edu)
起源与术语
克劳德·香农在其1948年的论文《通信的数学理论》中使用了这一术语。该论文分两部分,于当年7月和10月发表于《贝尔系统技术期刊》。香农指出,这个缩略词是由 J. W. 图基建议的。他解释说,具有两个稳定状态的器件,例如继电器或触发器电路,可以存储一比特;(n) 个这样的器件组合起来,就有 (2^n) 种可能的状态组合。(cs.yale.edu)
因此,同一个术语既可表示单个二进制符号,也可表示按对数定义的信息量单位。一个比特的值可以表示数字、逻辑条件,或较大编码消息的一部分。它的含义取决于使用它的系统所采用的约定,而不只是取决于 0 和 1 这两个符号本身。(cs.cornell.edu)
二进制表示
在二进制计数法中,每个数位的位权都是二的某个整数次幂。由 (n) 个比特组成的无符号序列可以表示从 0 到 (2^n-1) 的整数。例如,序列 (1011_2) 表示十进制的 (8+2+1=11)。四个比特可组成16种不同的位模式,八个比特则可组成256种。这是每个数位都能取两个值所带来的结果。(cs.cornell.edu)
位模式所表示的数值取决于其编码方式。在补码表示法中,(n) 位有符号整数的最高位位权为 (-2^{n-1}),而不是 (2^{n-1})。因此,同一个八位模式,按有符号整数解释时,可能与按无符号整数解释时表示不同的数值。比特本身没有变化,变化的是解释方式。(cs.cornell.edu)
物理实现与逻辑运算
比特是一个抽象概念,而不是某种特定的物质实体。电子电路将物理状态映射为逻辑值。晶体管充当受控开关,开关的组合则实现对二进制输入的运算。物理行为与逻辑解释之间的这种分离,使人们可以在不交代电路构造的每个微观细节的情况下描述电路。(courses.cs.cornell.edu)
这些运算用布尔代数描述,并由逻辑门实现。与、或、非运算用于组合二进制值或将其取反,而异或在两个输入不同时输出 1。逻辑门组成的网络可以实现算术运算,包括带进位的加法。更大型的计算结构则建立在这些基本运算之上。(cs.cornell.edu)
一个物理存储单元不一定恰好对应一个比特。闪存可以区分多种存储状态:每个单元存储两个比特需要四种可区分的状态,三个比特需要八种,四个比特需要十六种。因此,统计物理单元的数量与统计逻辑比特的数量,是描述存储的两种不同方式。(micron.com)
比特、字节与前缀
一个字节通常包含八个比特;四个比特组成的一组称为半字节(nibble)。比特用于计数二进制数位,字节则将这些数位组合成更大的单位。混淆二者会使容量或传输速率的换算产生八倍的偏差。符号 B 表示字节;bit 则明确表示比特。(cs.cornell.edu)
十进制前缀保留其在国际单位制中的含义:一千比特(kilobit)为 (10^3) 比特,一兆比特(megabit)为 (10^6) 比特。二进制前缀则明确表示二的幂:一 kibibit 为 (2^{10}=1{,}024) 比特,一 mebibit 为 (2^{20}=1{,}048{,}576) 比特。同样,一兆字节(megabyte)为 1,000,000 字节,而一 mebibyte 为 1,048,576 字节。(physics.nist.gov)
信息量
一个发生概率为 (p) 的事件所携带的信息量称为其自信息,即
[ I=-\log_2 p. ]
概率为 (1/2) 的结果具有一比特的自信息;概率较低的结果则可能具有更多的自信息。这个量衡量的是相对于某个概率模型而言的意外程度,而不是为了记录该结果而实际分配的二进制数位数量。(ocw.mit.edu)
对于两个取值的概率分别为 (p) 和 (1-p) 的二元随机变量,其信息熵为
[ H=-p\log_2p-(1-p)\log_2(1-p), ]
其中,概率为零的项按零计算。两个结果等概率时,熵等于一比特;结果确定时,熵降为零。因此,一个可预测的二进制数位虽然占据一个比特位置,却不带来任何不确定性。(ocw.mit.edu)
无损数据压缩利用不均等的概率和可预测的结构来缩短数据的表示。对于独立同分布的信源,信源编码定理揭示了可达到的平均编码长度与信源熵之间的关系。因此,以比特衡量的信息量并不简单等同于文件大小。(ocw.mit.edu)
差错与量子信息
比特在存储或传输过程中可能发生错误。纠错码引入具有特定结构的冗余,使某些特定的错误模式能够被检测或纠正。单个奇偶校验位可以检测任何奇数次比特翻转,但无法检测所有偶数次翻转构成的错误模式,也无法单独确定翻转比特的位置。(ocw.mit.edu)
量子比特与经典比特不同,因为其状态可以是基态 (|0\rangle) 和 (|1\rangle) 的量子叠加。在这组基下进行测量,会得到 0 或 1 这一经典结果,各结果的概率由该状态的振幅决定。叠加态不是经典比特的第三种取值,而是属于一种不同的信息数学描述。(learning.quantum.ibm.com)