问题描述
我看到使用”MiB”作为度量来表示Ubuntu中的大小。 MiB代表什么?特别是”i”?
最佳解决方案
有两种方式(通常使用)表示数量级以使大数字易于阅读,首先您可以使用10的幂数。
10⁰ = 1
10¹ = 10
10² = 100
10³ = 1000
或两个权力
2⁰ = 1
2¹ = 2
2² = 4
2³ = 8
使用这些系列作为基础,我们得出1000和1024(10 3和2 10)数字为一公斤。
一个字节有八位。所以一千字节是8×10 3 = 8000比特。硬盘制造商使用这种方法。在计算机科学中,人们通常使用两个幂,所以一个kibibyte是8×2十8 = 8192位。
数字越大,差异越大。有些甚至将这两种系统混合在一起,以获得漂亮的数字放在包装上。这就是为什么1.44MB软盘既不是1.44兆字节也不是1.44兆字节(它们使用1024×1000)。
i背后的逻辑是这些术语是从原始的si前缀,千位,兆位,千兆衍生出来的,但是二进制字被放入。所以我是二进制的第二个字母。 kibibyte的助记符是“千字节二进制字节”,而”KiB”的读音为”Kibibyte”。
所有这些都在IEC_80000 Standard中定义。
请注意,mebibyte没有被定义为2 2,而是(210)2,尽管它们是相等的。一个gibibyte是(210)3,一个tebibyte是(210)4等等。
Prefix Bytes Prefix Bytes
1 Byte = (2^10)^0 = 1 1 Byte = (10^3)^0 = 1
1 Kibibyte = (2^10)^1 = 1024 1 Kilobyte = (10^3)^1 = 1000
1 Mebibyte = (2^10)^2 = 1048576 1 Megabyte = (10^3)^2 = 1000000
1 Gibibyte = (2^10)^3 = 1073741824 1 Gigabyte = (10^3)^3 = 1000000000
1 Tebibyte = (2^10)^4 = 1099511627776 1 Terabyte = (10^3)^4 = 1000000000000
请记住,当作者指kibibyte时,通常使用kilobyte这个词。正如Randy Orrison指出的那样,这个二进制单元仅在1999年左右引入。
正如nealmcb在评论中发现的那样,对此有一个官方政策:https://wiki.ubuntu.com/UnitsPolicy
总之,本政策提醒开发人员使用SI或IEC前缀,但不要混合它们。它继续说:
For file sizes there are two possibilities:
- Show both, base-10 and base-2 (in this order). An example is the Linux kernel: “2930277168 512-byte hardware sectors: (1.50 TB/1.36 TiB)”
- Only show base-10, or give the user the opportunity to decide between base-10 and base-2 (the default must be base-10).
次佳解决方案
What does MiB stand for? In particular the “i”?
由于没有人真的回答了这个问题:”MiB”代表”megabinary byte”,可以缩写为”mebibyte”(尽管这听起来很愚蠢,我宁愿只是坚持说”megabinary”)。 See the NIST explanation.
所以”i”来自”binary”这个词。
过去还有其他一些缩写这些单位的建议,但他们都未能获得牵引力:
-
κ= 1024,κ2=1024²,κ3=1024³,…(希腊字母kappa,很难打字)
-
KKB = 1024,MMB =1024²,GGB =1024³,…(可能会误解为megamegabyte = TB)
-
bK = 1024,bK²=1024²,bK³=1024³,……(当提出时,许多计算机甚至没有小写字母)
-
1B10 = 1024,1B20 =1024²,1B30 =1024³,…
-
k 2 B = 1024,M 2 B = 1024 2,G 2 B = 1024 3,……
第三种解决方案
这是一个IEC标准前缀,意思是“通过两个权力”
2^10 = 1024 = Ki-
2^20 = 1048576 = Mi-
更多细节
http://en.wikipedia.org/wiki/Kibi-#IEC_standard_prefixes
http://en.wikipedia.org/wiki/Mebibyte
第四种方案
它们是binary prefixes,对应于更常见的小数前缀。 (这是一篇很好的文章,它很好地解释了原理。)