四川省金属学会-亚博电竞网

1g等于1000兆,还是等于1024兆?

来源: 科普中国  发布时间:2024-03-13

很多人买电脑后,发现原本标配256g的硬盘,电脑显示只有238g,足足“缩水”了18g的储存空间。每当遇到这种情况,一些网友就会认为这是商家虚标,顿生郁闷。

但事实真是这样吗?并不是。

因为储存空间“缩水”类似现象并非只发生在你刚刚买来的电脑上,也发生在你将手机里的一个文件传输到你的电脑上时,更可能发生在两种不同系统的电脑间传文件时……

下面,笔者就做一个小实验,将手机里的一个视频传到电脑上,看看其大小会有怎样的变化。

图片1.png

图为笔者要上传的一个视频。(来源:作者自制)

图片2.png

该视频在手机文件里显示的大小为28mb,也就是28兆。(来源:作者自制)

下面,我们来看看这个视频在电脑上显示的大小,如下:

图片3.png

图片4.png

如上图显示,一个在手机里显示为28兆的视频,上传windows电脑后,其显示只有26.6mb,即26.6兆。(来源:作者自制)

手机里显示是28兆,这是因为手机系统的“十进制”,而上传到windows电脑后,电脑是以“二进制”来统计视频的大小,因而也就有了差别。

使用二进制的原因

核心原因是,计算机在计算和存储时,主要处理的是二进制数据。这就导致计算机存储器的容量通常是一些大幂的倍数,例如:

一个内存条,其内存容量为268435456 字节。

“268435456”这个数字使用的是“十进制”,看上去极为复杂。但如果使用2的幂来表示就十分简洁了,如下:

微信图片_20240308104508.png

=268435456

微信图片_20240308104508.png

极为简洁,其在二进制算法中,

微信图片_20240308104508.png

字节就等于256兆。

而在十进制算法中,268435456字节等于268.435456兆。

说到这里,有网友可能会产生疑问:2的幂跟二进制有什么关系呢?关系如下:

图片5.png

图片来自作者自制。

请仔细看,对于二进制来说,2的幂极为有规律,规律就是:

指数是多少,二进制中“1”后面就跟多少个“0”。

例如:

2的0次方,二进制中,1后面就没有“0”。

2的10次方,二进制中,1后面就跟10个“0”。

同理可知:

2的128次方,二进制中,1后面就跟128个“0”。

……

不难发现,2的幂表现出来的这种规律,是不是就跟“十进制”中,10的幂表现出来的规律是一样一样的?没错。

图片6.png

图片来自作者自制。

以上两个表格说明了,在二进制中,2的幂,它类似于十进制中,10的幂。

图片7.png

图片来自作者自制。

继续观察2的幂所对应的“十进制”数字,大家应该就能明白了,为什么电脑内存常常是4g、8g、16g等等,而很少出现10g内存或者15g内存。

从十进制的角度看,显然10比8好,15比16好。

还有,硬盘空间,比如你的手机存储容量,也常常是64g、128g、256g。奇怪了,为什么就不能是50g、100g和150g?

现在,你应该知道答案了。前者恰好对应了2的幂。

两者的区别

对于计算机来说,使用2的幂来衡量存储空间的大小是最合适的。

然而,计算机又是为人类服务的,而人类恰好10根手指,使用十进制最舒服。使用其他进制简直就是货真价实的“反人类”,十分的不好口算。

1g等于1000兆,17g就是1.7万兆。这多好口算,对吧。

但如果使用二进制,你真的能瞬间算出17g就是等于1.7408万兆吗?

最后,硬盘厂商如果使用十进制来标注硬盘大小的话,硬盘会显得大一些,也更方便一些。因此,市面上的很多硬盘,他们的大小计量方式,大都是按照“十进制”来的。

目前,衡量存储空间或计量文件的大小仍比较混乱,因为两种进制都在用。为了不乱,1999年,国际电工委员会(iec)公布了一些标准:

主要内容就是,信息大小的计量单位,十进制中没变,如下:

千字节,简写为kb,英文全称kilobyte。

兆字节,简写为mb,英文全称megabyte。

吉字节,简写为gb,英文全称gigabyte。

太字节,简写为tb,英文全称terabyte。

拍字节,简写为pb,英文全称petabyte。

……

而如果使用二进制计量信息大小时,是这样的:

千字节,简写为kib,英文全称kibibyte。

兆字节,简写为mib,英文全称mebibyte。

吉字节,简写为gib,英文全称gibibyte。

太字节,简写为tib,英文全称tebibyte。

拍字节,简写为pib,英文全称pebibyte。

……

如果你以后在论文中看到类似pib,或者pebibyte这样的表述时,那就可以说明,论文作者是使用二进制方式来计量信息容量的大小。

很多人说:1g不是等于1000兆,而是等于1024兆。那么现在,我们再来看看这个疑问应该怎么解答呢?

显然,正确答案应该是:在10进制中,1gb就是等于1000mb(即1g等于1000兆),这没有错。

图片8.png

图片来自《nature》上的论文截图。

举个例子,最近火出圈的超级光盘,在讨论其内容的研究论文中,可以看到,作者使用的不是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”为基础单位,使用“十进制”和“二进制”时,两者的容量差别,如下:

图片9.png

图片来自作者自制。

从上图可知,存储单位越大,两种计量方式的差别越大。这就是为什么,很多人买电脑后,发现硬盘容量“缩水”的原因。

图片10.png

图片自来作者自制。

微软的电脑系统是按照“二进制”来计量存储空间大小的,因此,一张手机照片上传到微软系统电脑后,照片在容量上会变小。

然而,需要注意的是,虽然微软电脑系统是使用“二进制”算法,但他们并没有使用诸如“gib”或者“tib”这样的标准单位。而是直接显示“gb”或者“tb”。

作者:寒木钓萌 科普作家、科技部“全国优秀科普作品奖”获得者

审核:兰名荥 北京邮电大学数字媒体与设计艺术学院副教授

出品:科普中国

监制:中国科学技术出版社有限公司、中科数创(北京)数字传媒有限公司



亚博电竞网的版权与免责声明
【1】本网站凡注明“学会秘书处”的所有作品,亚博电竞网的版权均属于四川省金属学会所有,未经书面授权,任何媒体、网站或个人不得转载、摘编或利用其它方式使用上述作品。已经本网站协议授权的媒体或网站,应在授权范围内使用上述作品,并注明“来源:四川省金属学会”。违者本网站将追究其相关法律责任。
【2】本网站凡注明“来源:xxx(非学会秘书处)”的作品,均转载自其它媒体,登载此作品出于传递更多信息之目的,不代表学会观点或证实其描述,不对其真实性负责。作品内容仅供参考,如转载稿件涉及亚博电竞网的版权等问题,请在两周内来电或来函与四川省金属学会联系。

二维码

关注学会
微信公众号

二维码

访问学会
手机版

网站地图