计算机的容量统计单位
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在我们阅读计算机相关文档和资料的时候,通常会看到Kb,MB,GB等字样,这些都是计算机中用来衡量数据量的统计单位。
众所周知,由于结构和设计的原因,电子计算机是用二进制来进行数据的计算和存储,换句话就是只能够处理和存储“0”和“1”两种状态(比如晶体管通电与否,磁盘上有没有小坑等都是两种状态)。
我们将一个能够在“0/1”之间切换状态的单位称之为bit,中文名为“位”,一般缩写为小写的字母b,而我们常用的大写字母B则是指Byte,中文名为“字节”,一个B yte是由8个b it组成的,因此每个字节可以存储“0000 0000”~“1111 1111”共256种状态。
换算公式如下:
1 Byte = 8 bit(s) 以下为了表述方便,将复数的s都去掉了
美国标准协会(American Standards Association,简写为ASA,后来发展为ANSI)在1967年制订了ASCII 代码标准(美国标准信息交换代码,是American Standard Code for Information Interchange的简称),赋予“0000 0000”~“1111 1111”不同的含义,如“0100 0001”代表大写字母“A”,“0011 1001”代表数字“9”,“0000 1000”代表“回车键”。
显然,每个字节能存贮的256种不同状态,这用来表示10个数字,26个字母和其他常用标点符号控制符等是足够了。
不过由此也可以发现单个的汉字不能像英文字母可以只用一个字节存储,因为汉字的总数多达上万,只用256种不同状态来表现汉字是远远不够的。
因此在ASCII无法满足要求的背景下(1967年的东西了,上次修订也是1986年的事儿了,能不落伍么),又涌现出了很多多字节的编码标准,如简体中文的GB2312,日文的Shift-JIS和统一编码Unicode等。
那么Byte和bit通常用于什么环境呢?一般来说,统计计算机处理和存储的数据量都会采用Byte,而计算网络流量的时候,则多用bit,比如我们常说的512K的ADSL就是指每秒钟可以传输512K个bit(即512Kbps,ps就是per second即“每秒”),而下载软件一般都是用Byte来统计下载量的,这也解释了512K的ADSL为什么不能一秒钟下载完512K字节文件(排除压缩传输的情况下)。
同理8M光纤宽带和100M以太网等等也都是采用bit来作为数据量统计单位的。
所以说看资料中的数据统计时候一定要细心,否则理解会产生8倍的偏差。
明白B和b的定义区别和使用环境了,那么上文提到的Kb,MB和GB等中的K,M 和G代表什么呢?以K为例,K即Kilo的缩写,英文的含义就是“一千”,1 KB = 1,000 Byte,而M代表Mega,就是“一千千”(其实就是一百万,不过计算机中通常以千为基础单位因此很少采用“百”,“万”等中文习惯说法),1 MB = 1 KKB = 1,000 KB =1,000,000 Byte,依此类推。
这样看来,活用这些单位来表达非常大的存储量是很方便的,比写很多个0强多了。
不过目前我们所碰到90%以上的场合中看到的“K”都不代表1000,而是1000的近似数1024,为什么这么讲?同样是电子计算机采用二进制的缘故。
为了方便统计和计算,计算机领域通常采用2的10次方即1024来替代1000。
为了防止混淆,国际上推出了新的标准,采用Ki(Kibi的简称,不知道中文怎么说比较好)来表示1024,如1 KiB = 1024 Byte = 2^10 Byte,同理还有Mi(Mebi的简称),如1 MiB = 1 KiKiB = 1,024 KiB = 1,048,576 Byte = 2^20 Byte。
不过目前Ki,Mi和Gi等单位认知度还不够高,只在部分软件和较新Linux系统中被采用,至于知道的人员更是少之又少,在计算机领域人们(甚至Windows操作系统)还是习惯于用原本代表1000的次方的K,M和G等来表达1024次方,即Ki,Mi和Gi所
代表的含义。
那么计算机领域是否有用1000即真正的K做单位的场合呢?答案是肯定的,一般外置的非电子元件存储器如硬盘,刻录光盘等的标称容量都是采用1000为单位来统计的,比如一个200 GB的硬盘,实际容量就是200*1000^3即200,000,000,000字节(实际数字有细微偏差)。
换算一下:
200 GB = 200*1000^3 Byte = 200,000,000,000 Byte = 200*(1000^3/1024^3) GiB = 186 GiB
这就是为什么一个硬盘买来格式化后容量总是比标称容量小的原因,就是因为硬盘厂商采用的容量统计计算标准和操作系统的不同。
同理一片标称容量4.7 GB的光盘,实际的容量约为4.38 GiB,现在明白了为什么有时刻录不到4.7 GiB的数据会提示空间不足了吧。
下面附表,可以详细的看出具体的标准定义和区别。
单位缩写标准定义(字节)通常含义(字节)
kilobyte KB 10的3次方(1000)2的10次方(1024)
megabyte MB 10的6次方(1000的2次方)2的20次方(1024的2次方)
gigabyte GB 10的9次方(1000的3次方)2的30次方(1024的3次方)
terabyte TB 10的12次方(1000的4次方)2的40次方(1024的4次方)
petabyte PB 10的15次方(1000的5次方)2的50次方(1024的5次方)
exabyte EB 10的18次方(1000的6次方)2的60次方(1024的6次方)
zettabyte ZB 10的21次方(1000的7次方)2的70次方(1024的7次方)
yottabyte YB 10的24次方(1000的8次方)2的80次方(1024的8次方)单位缩写标准定义(字节)
kibibyte KiB 2的10次方(1024)
mebibyte MiB 2的20次方(1024的2次方)
gibibyte GiB 2的30次方(1024的3次方)
tebibyte TiB 2的40次方(1024的4次方)
pebibyte PiB 2的50次方(1024的5次方)
exbibyte EiB 2的60次方(1024的6次方)
zebibyte ZiB 2的70次方(1024的7次方)
yobibyte YiB 2的80次方(1024的8次方)。