参考资料:鸟哥的 linux 私房菜
容量单位
计算机
计算机对数据的判断主要依据有没有通电来记录信息,所以理论上对于每一个纪录单位而言,它只认识 0 与 1 而己。0/1 这个二进制的的单位我们称为 bit 但 bit 实在太小了,所以在储存数据时每份简单的数据都会使用到 8 个 bits 的大小来记录,因此定义出 byte 这个单位,他们的关系为:
1 Byte = 8 bit
- bit 是 binary digit 二进制数字的缩写
- 为什么 1 Byte = 8 bit?
字节在早期计算机内部是用标准 ASCII 码来表示的
根据当时情况确定至多有 128 种需要表示的字符(当时是 IBM 的标准,现在普遍是 255),也就是 2 的 7 次方。
用二进制的 0 和 1 来表示就需要 7 位,即 7bit。此外,出于安全考虑,ASCII 码还需加上一位奇偶较难位。所以标准的 ASCII 码是 8 位,也就是 8bit。- Byte 也常用大写 B 表示,bit 常用小写 b 表示 即 1B=8b
计算机科学快速发展,Byte 还是太小了,在较大的容量情况下,使用 byte 相当不容易判断数据的大小,举例来说,1000000 bytes 这样的显示方式你能够看得出有几个零吗?所以后来就有一些常见的简化单位表示法,例如 K 代表 1024 byte,M 代表 1024K 等。 而这些单位在不同的进位制下有不同的数值表示,底下就列出常见的单位与进位制对应:
进位制 | Kilo | Mega | Giga | Tera | Peta | Exa | Zetta |
---|---|---|---|---|---|---|---|
二进制 | 1024 | 1024K | 1024M | 1024G | 1024T | 1024P | 1024E |
十进制 | 1000 | 1000K | 1000M | 1000G | 1000T | 1000P | 1000E |
一般来说,文件容量使用的是二进制的方式,所以 1 GBytes 的文件大小实际上为:1024x1024x1024Bytes 这么大! 速度单位则常使用十进制,例如 1GHz 就是 1000x1000x1000 Hz 的意思。
速度单位
CPU 的指令周期常使用 MHz 或者是 GHz 之类的单位,这个 Hz 是秒分之一。而在网络传输方面,由于网络使用的是 bit 为单位,因此网络常使用的单位为 Mbps 是 Mbits per second,亦即是每秒多少 Mbit。举例来说,大家常听到的 20M 宽带,如果转成文件容量的 byte 时,其实理论最大传输值为:每秒 2.5Mbyte/ 每秒 625Kbyte 的下载/上传速度喔!