先放上直观的对应表:

以十进制为单位 以二进制为单位
1 KB = 1000 Bytes = 103 Bytes 1 KiB = 1024 Bytes = 210 Bytes
1 MB = 1000 KB = 106 Bytes 1 MiB = 1024 KiB = 220 Bytes
1 GB = 1000 MB = 109 Bytes 1 GiB = 1024 MiB = 230 Bytes
1 TB = 1000 GB = 1012 Bytes 1 TiB = 1024 GiB = 240 Bytes

国际单位制中TB、GB、MB、KB是“1000 进位”的数,为此国际电工协会(IEC)拟定了"KiB"、“MiB”、“GiB"的二进制单位,专用来标示“1024 进位”的数据大小。虽然进制不同,但1Byte = 8Bits 是一样的。比如:

  • 1 KB ( KiloByte ) = 1000 Bytes = 8000 Bits
  • 1 KiB ( KibiByte ) = 1024 Bytes = 8192 Bits

在日常使用的计算机中,硬盘厂商在计算容量方面是以每 1000 为一进制的,每 1000 Bytes 为 1KB,每 1000 KB 为1MB,每 1000 MB 为 1GB,每 1000 GB 为 1TB,在操作系统中对容量的计算是以 1024 为进位的,并且并未改为"KiB"、“MiB”、“GiB"的二进制单位。

所以在计算机的硬盘容量中,1GB=109/230≈0.93GiB,操作系统会认为1GB 的硬盘空间只有 0.93GB 的容量,实际上应为 0.93GiB。造成在硬盘中是“1000 进位”的 1G,换到操作系统上“1024 进位”的 1G 变成不够数现象。