马修同学昨天关于全美《大兵》根据码率计算的数据量超过碟片最大容量的问题,我最初也没有看出错在何处,今天重新仔细看了马修同学的计算公式,发觉错误出现在十进制和二进制的转换过程之中。其实,计算机的二进制的确很不习惯,常常在不知不觉之中又回到了十进制。
1、几个基本概念
位:“位(bit)"是电子计算机中最小的数据单位。每一位的状态只能是0或1。
字节:8个二进制位构成1个“字节(Byte)",它是存储空间的基本计量单位。
1 bit (b) = 0 or 1 = one binary digit 一个二进制位元
1 kilobit(kb)=10^3 bits = 1,000 bits 一千位元
1 Megabit(Mb)=10^6 bits = 1,000,000 bits 一百万位元
1 Gigabit(Gb)=10^9 bits = 1,000,000,000 bits 一万亿位元
(注意:以上是十进制的)
1 Kilobyte(K/KB)=2^10 bytes=1,024 bytes 千字节
1 Megabyte(M/MB)=2^20 bytes=1,048,576 bytes 兆字节
1 Gigabyte(G/GB)=2^30 bytes=1,073,741,824 bytes 千兆字节
1 Terabyte(T/TB)=2^40 bytes=1,099,511,627,776 bytes吉字节
(注意:以上是二进制的)
2、码率计算
我这里还是以马修同学的全美《大兵》为例,
平均码率为6.6Mb/s=6.6*10^6b/s,
换算成byte就是6.6*10^6/8=8.25*10^5byte/s=7.68*10^-4GB/s
片长为2:49:18=1.02*10^4s
容量(数据量)=(7.68*10^-4)*(1.02*10^4)=7.83GB
总结:
碟片容量(GB)=片长(s)x码率(Mbps)/(8*1074)