炫父贴很多人买电脑后,发现原本标配256G的硬盘,电脑显示只有238G,足足“缩水”了18G的储存空间。每当遇到这种情况,一些网友就会认为这是商家虚标,顿生郁闷。
因为储存空间“缩水”类似现象并非只发生在你刚刚买来的电脑上,也发生在你将手机里的一个文件传输到你的电脑上时,更可能发生在两种不同系统的电脑间传文件时……
下面,笔者就做一个小实验,将手机里的一个视频传到电脑上,看看其大小会有怎样的变化。
该视频在手机文件里显示的大小为28MB,也就是28兆。(来源:作者自制)
如上图显示,一个在手机里显示为28兆的视频,上传Windows电脑后,其显示只有26.6MB,即26.6兆。(来源:作者自制)
手机里显示是28兆,这是因为手机系统的“十进制”,而上传到Windows电脑后,电脑是以“二进制”来统计视频的大小,因而也就有了差别。
核心原因是,计算机在计算和存储时,主要处理的是二进制数据。这就导致计算机存储器的容量通常是一些大幂的倍数,例如:
“268435456”这个数字使用的是“十进制”,看上去极为复杂。但如果使用2的幂来表示就十分简洁了,如下:
不难发现,2的幂表现出来的这种规律,是不是就跟“十进制”中,10的幂表现出来的规律是一样一样的?没错。
继续观察2的幂所对应的“十进制”数字,大家应该就能明白了,为什么电脑内存常常是4G、8G、16G等等,而很少出现10G内存或者15G内存。
还有,硬盘空间,比如你的手机存储容量,也常常是64G、128G、256G。奇怪了,为什么就不能是50G、100G和150G?
然而,计算机又是为人类服务的,而人类恰好10根手指,使用十进制最舒服。使用其他进制简直就是货真价实的“反人类”,十分的不好口算。
最后,硬盘厂商如果使用十进制来标注硬盘大小的话,硬盘会显得大一些,也更方便一些。因此,市面上的很多硬盘,他们的大小计量方式,大都是按照“十进制”来的。
目前,衡量存储空间或计量文件的大小仍比较混乱,因为两种进制都在用。为了不乱,1999年,国际电工委员会(IEC)公布了一些标准:
如果你以后在论文中看到类似PiB,或者pebibyte这样的表述时,那就可以说明,论文作者是使用二进制方式来计量信息容量的大小。
很多人说:1G不是等于1000兆,而是等于1024兆。那么现在,我们再来看看这个疑问应该怎么解答呢?
显然,正确答案应该是:在10进制中,1GB就是等于1000MB(即1G等于1000兆),这没有错。
举个例子,最近火出圈的超级光盘,在讨论其内容的研究论文中,可以看到,作者使用的不是pebibit或pebibyte,并非二进制算法。而作者使用的是petabit,是十进制算法。因此,这里的1G应为1000兆,而非1024兆。
综上,1G既可以是1000兆,也可以是1024兆。关键看是十进制还是二进制。在十进制中,1GB=1000MB,即1G等于1000兆;而在二进制中,1GiB=1024MiB,即1G等于1024兆。
由于很多人,甚至是一些大公司,由于历史原因,他们不习惯于使用诸如“GiB” “MiB”等这样的标准单位,而是直接简写为“GB”和“MB”,然后就引发了更多的混乱,继而导致无数人以为1GB就是等于1024MB。
换句话说,“混乱”本来是可以不存在的,但由于历史原因,单位简写习惯的原因,以及二进制和十进制中的1000兆和1024兆两者大小接近,容易被忽略的原因,这才导致了混乱。
下面一起来看看,我们以字节,也就是“B”为基础单位,使用“十进制”和“二进制”时,两者的容量差别,如下:
从上图可知,存储单位越大,两种计量方式的差别越大。这就是为什么,很多人买电脑后,发现硬盘容量“缩水”的原因。
微软的电脑系统是按照“二进制”来计量存储空间大小的,因此,一张手机照片上传到微软系统电脑后,照片在容量上会变小。
然而,需要注意的是,虽然微软电脑系统是使用“二进制”算法,但他们并没有使用诸如“GiB”或者“TiB”这样的标准单位。而是直接显示“GB”或者“TB”。
|