十进制(SI)与二进制(IEC)单位对照表
下表列出了两套标准化词头体系中每个单位对应的精确字节数。SI 十进制词头由 BIPM 的《国际单位制》手册定义;二进制词头由 IEC/ISO 80000-13 定义。
| 单位 | 体系 | 精确字节数 |
|---|---|---|
| 1 KB(千字节) | 十进制(SI) | 1,000 |
| 1 KiB(千比字节) | 二进制(IEC) | 1,024 |
| 1 MB(兆字节) | 十进制(SI) | 1,000,000 |
| 1 MiB(兆比字节) | 二进制(IEC) | 1,048,576 |
| 1 GB(吉字节) | 十进制(SI) | 1,000,000,000 |
| 1 GiB(吉比字节) | 二进制(IEC) | 1,073,741,824 |
| 1 TB(太字节) | 十进制(SI) | 1,000,000,000,000 |
| 1 TiB(太比字节) | 二进制(IEC) | 1,099,511,627,776 |
- 不同操作系统显示大小的方式并不一致:有的使用二进制单位(历史上却标注为十进制符号),有的使用真正的十进制单位,因此同一个文件在不同系统上可能显示不同的数字。
- 存储设备以十进制单位进行宣传;内存容量则天生是二进制的(标称「16 GB」的内存条实际上是 16 GiB)。
- 格式化后的可用容量还会因文件系统结构而略有减少,这与单位换算的差异是两回事。
什么是十进制单位与二进制单位?
文件大小以字节计数,更大的数值用词头来表示。目前存在两套并行的词头体系。十进制体系使用以 1,000 为进制的 SI 词头:1 KB = 1,000 字节,1 MB = 10⁶ 字节,1 GB = 10⁹ 字节,1 TB = 10¹² 字节。二进制体系使用以 1,024 为进制的 IEC 词头:1 KiB = 1,024 字节,1 MiB = 1,048,576 字节,1 GiB = 1,073,741,824 字节,1 TiB = 1,099,511,627,776 字节。
二进制词头 kibi(Ki)、mebi(Mi)、gibi(Gi)、tebi(Ti)由国际电工委员会标准化(最初见于 IEC 60027-2,现收录于 ISO/IEC 80000-13),正是因为同一个词——例如「gigabyte」——曾被同时用来表示 10⁹ 字节和 2³⁰ 字节。按照标准,GB 永远表示 10⁹ 字节,GiB 永远表示 2³⁰ 字节。
这带来了一个众所周知的现象——「消失」的硬盘空间。存储厂商以十进制单位标注容量,因此一块 1 TB 的硬盘实际拥有 10¹² 字节。而以二进制单位显示大小的操作系统,会把这个字节数除以 1,024³,显示约 931 GiB——过去这个数值往往仍标注为「GB」,让硬盘看起来比宣传的要小。实际上并没有空间消失,两个数字只是用不同单位描述同一个字节数。
如何使用这个文件大小计算器
- 输入需要换算的数值。
- 选择它的单位——十进制(KB、MB、GB、TB)或二进制(KiB、MiB、GiB、TiB)。
- 查看精确的字节数,这是两套体系之间唯一没有歧义的共同基准。
- 对比十进制(MB/GB)与二进制(MiB/GiB)的等值结果,看看同一份数据在两种惯例下是如何被呈现的。
文件大小换算背后的公式
每一次换算都要先转换成字节。用输入的数值乘以其单位对应的字节系数得到字节数,再除以目标单位的系数。十进制单位的系数是 1,000 的幂,二进制单位的系数是 1,024 的幂。
示例:1 TB = 10¹² 字节。除以 1,024³(= 1,073,741,824)得到 931.32 GiB,除以 1,024⁴ 得到 0.9095 TiB。反过来,1 GiB = 1,073,741,824 字节 = 1.0737 GB。十进制与二进制单位之间的差距会随着词头级别增大而扩大:千级约 2.4%,兆级约 4.9%,吉级约 7.4%,太级约 10.0%。
常见错误
- 看到操作系统显示「1 TB」硬盘约为 931 GB,就以为硬盘有问题——硬盘确实拥有 10¹² 字节,只是操作系统按二进制 GiB 显示。
- 把 1 GB 当作 1,024 MB——按照 SI 标准,1 GB = 1,000 MB;1,024 MiB 才是 1 GiB。
- 在计算过程中混用两套词头体系(例如把 GB 乘以 1,024 得到 MB),会累积约 5%–10% 的误差。
- 把字节(B)和比特(b)搞混:文件大小用字节,网速用比特,两者相差 8 倍。
常见问题
为什么我的 1 TB 硬盘只显示 931 GB?
这块硬盘确实包含 1 TB = 10¹² 字节,这是按十进制 SI 单位标注的容量。以二进制单位显示大小的操作系统会将其除以 1,024³,得到 931.32 GiB——这个数字过去常常仍标注为「GB」。两个数字描述的是同一容量,只是单位惯例不同。
GB 和 GiB 有什么区别?
按照 SI 十进制惯例,1 吉字节(GB)是 10⁹ = 1,000,000,000 字节。按照 IEC 二进制惯例,1 吉比字节(GiB)是 2³⁰ = 1,073,741,824 字节。GiB 比 GB 大约 7.4%。二进制词头(KiB、MiB、GiB、TiB)的标准化正是为了终结用同一个词表示两种不同大小的歧义。
1 MB 是 1,000 KB 还是 1,024 KB?
按照 SI 标准,1 MB = 1,000 KB = 1,000,000 字节。而 1,024 KiB 对应的是 IEC 二进制体系中的 1 MiB(兆比字节)= 1,048,576 字节。历史上「megabyte」曾被不加区分地用于这两者,这正是二进制词头被创造出来要解决的歧义。
1 太字节等于多少字节?
按照 SI 十进制词头,1 太字节(TB)是 10¹² = 1,000,000,000,000 字节。1 太比字节(TiB)是 2⁴⁰ = 1,099,511,627,776 字节——比 TB 多约 10%。存储厂商在标注硬盘容量时使用的是十进制的太字节。
为什么内存容量使用二进制单位?
内存芯片按 2 的幂次寻址,因此其容量天然是二进制的:标称「16 GB」的内存条实际包含 16 GiB = 17,179,869,184 字节。相比之下,存储硬盘是按十进制单位宣传的,这也是硬盘容量与内存容量看似遵循不同规则的原因之一。
参考文献
- ISO/IEC 80000-13:2008. Quantities and units — Part 13: Information science and technology (binary prefixes kibi, mebi, gibi, tebi).
- IEC 60027-2. Letter symbols to be used in electrical technology — Part 2: Telecommunications and electronics (original binary-prefix standard, 1998 amendment).
- Bureau International des Poids et Mesures (BIPM). The International System of Units (SI Brochure), 9th edition, 2019 — SI decimal prefixes.
- NIST. Prefixes for binary multiples. physics.nist.gov reference on IEC binary prefixes.