kb是什么意思网络 kb是什么意思 网络流行语kb是什么

硬盘的容量用了1000进位而不是以2进制为底的1024进位这个问题已经是常识了 , 但是存储厂商这么标反而是符合标准的 。可能有些朋友在Linux和macOS中见过容量单位的两个大写字母中插了一个i的 , 比如KiB、MiB、GiB这样的单位 , 那么它和我们常用的KB、MB和GB有什么区别呢?

kb是什么意思网络 kb是什么意思 网络流行语kb是什么

文章插图
TL;DR:
KB代表国际单位制标准规定的1000进位 , KiB这类中间带个"i"的是1024进位法的标准写法 。Windows使用1024进位 , 但是没有按照标准写 , Linux和macOS等很多其他系统使用1000进位 , 并且按照规范写了 。Kb这类代表1000进位 , 计量单位为bit而不是byte的单位 , 常见于描述带宽和媒体码率 。
还是要扯到二进制与十进制身上 。
在国际通用的国际单位制标准(SI)中 , 对于一个单位的倍数和分数 , 有着详细的定义 。比如对于赫兹这一用于描述频率的导出单位 , 1000倍时可以称为千赫兹(kHz) , 1000000(百万)倍时 , 称为兆赫兹(MHz) , 再往上以1000倍跳就是吉赫兹(GHz)、太赫兹(THz)……(注意 , 标准中代表“千”的字母k必须为小写)
而这些放在单位名之前的字母 , 其实都是一些代表数量的单词的首字母 , 比如k是kilo , M是mega , G是giga……这些词代表的数有一个特征——它们都是以10为底数的幂 。
然而到了计算机工业中 , 在底层的硬件电路中 , 通用的是二进制 , 基于十进制的国际单位制对它没用 , 反而会带来麻烦 。为了方便描述以2为底的大数字幂 , 工程师们联合了起来 , 由国际电工委员会(IEC)制定了新的用于1024进位的数字前缀 , 其实就是将原本对应单词中的最后两位改成了"bi" , 以代表二进制(binary) , 而对应的缩写 , 也从原本的单字母变成了附上"i" , 比如kB变成KiB , MB变成MiB , 全称为kibibytes , mebibytes 。
但因为这套标准在1998年才提出 , 虽然马上写入了ISO标准中 , 但当时Windows都已经出Windows 98了 , 所以并没能很好的统一整个计算机业界 , 很多系统和厂商仍然保持了1 KB=1024 Bytes的表示方式 , 并没有附上"i" 。内存方面的JEDEC标准也仍然我行我素 , 采用了与Windows一样的表示方法 , 所以我们今天在内存上看到的GB、MB等单位都是1024进位的 。而硬盘存储业界 , 仍然使用1 KB=1000 Bytes的国际单位制标准对容量进行描述 。
不过在Linux下 , 有一些程序提供了两种表示方式 , 但也不是都按照标准来写单位 , 比如:
kb是什么意思网络 kb是什么意思 网络流行语kb是什么

文章插图

kb是什么意思网络 kb是什么意思 网络流行语kb是什么

文章插图
【kb是什么意思网络 kb是什么意思 网络流行语kb是什么】
macOS里面用的还是SI的1000进位:
kb是什么意思网络 kb是什么意思 网络流行语kb是什么

文章插图
再来看到B的大小写区别这个老生常谈的话题上 , 大写B指的是byte即字节 , 小写b指的是bit即比特 , 1 byte = 8 bits 。常见使用bit而不是byte来描述的量就是比特率了 , 比如1000 kb/s , 或者写成1000 kbps的形式 , 都是一样的 。而在描述通信带宽的时候也往往会使用bit , 比如现在的千兆局域网、百兆光宽带就是1000Mbps、100Mbps而不是1000MB/s、100MB/s , 而我们实际看到的文件传输速度使用的是byte来描述 , 两者有一个八倍的换算关系 。
而同样在这里 , 国际单位制占据了统治的地位 , 这些使用bit作为单位的量 , 大部分采用的都是1000进位而不是1024进位 , 所以在换算的时候还要考虑到这个因素 , 于是 , 我们在Windows下能够看到的百兆宽带最大的理论速度就变成了:
100 Mb/s = 100 × 1000 × 1000 = 100,000,000 b/s
100,000,000 b/s = 12,500,000 B/s = 12,207.03125 KiB/s = 11.92 MiB/s
同理 , 因为Windows并不遵守规范 , 所以这个最终显示给你的数字是11.92MB/s , 但切记 , 这不是正确的表示方法 。