字节
字节(Byte)是计算机存储和传输数据的基本计量单位,通常由 8 个二进制位(bit)组成。8 位一共能表示 2^8 = 256 种状态,所以一个字节能容纳 0–255 之间的整数。内存寻址、文件大小、网络数据几乎都以字节为最小可寻址单位。
字节在开发中主要用于衡量数据量和表示原始数据:
- 换算:
1 KB = 1024 B、1 MB = 1024 KB(十进制语境有时按 1000 计); - 字符编码:ASCII 一个字符占 1 字节,UTF-8 一个汉字通常占 3 字节;
- 十六进制:一个字节正好对应两位十六进制数(
00–FF)。
常见误区是把字节(Byte,大写 B)和位(bit,小写 b)混淆:1 Byte = 8 bit,网速常用 Mbps(兆比特每秒),文件大小用 MB(兆字节),两者相差 8 倍。另外「一个字符等于一个字节」只在单字节编码下成立,多字节编码里一个字符可能占多个字节,统计文本长度时要区分「字符数」和「字节数」。
常见问题
字节和位(bit)有什么区别?
位是最小的二进制单位,只有 0 和 1 两种状态;1 个字节等于 8 个位。习惯上字节写作大写 B、位写作小写 b。网速里的 Mbps 是兆比特每秒,文件里的 MB 是兆字节,两者相差 8 倍,别搞混。
为什么一个字节的取值范围是 0 到 255?
一个字节有 8 位,每位是 0 或 1,共 2^8 = 256 种组合,对应无符号整数 0–255。如果按有符号数解释,则是 -128 到 127。
一个汉字占几个字节?
取决于编码:UTF-8 下一个汉字通常占 3 字节,GBK 下占 2 字节,UTF-16 下多为 2 字节。所以同一段文本,按「字符数」和按「字节数」统计出的长度往往不一样。