位(bit)、字节(byte)、字符、编码之间的关系

一、位:数据存储的最小单位,每个二进制数字0或者1就是1个位。

二、字节

    8个位构成一个字节;即:1 byte (字节)= 8 bit(位);

    1 KB = 1024 B(字节);

    1 MB = 1024 KB;   (2^10 B)

    1 GB = 1024 MB;  (2^20 B)

    1 TB = 1024 GB;   (2^30 B)

三、字符

    a、A、中、+、*、の均表示一个字符;

   一般 utf-8 编码下,一个汉字字符占用3个字节;

   一般 gbk 编码下,一个汉字字符占用2个字节;

四、字节和字符

    字节是计算机传输数据的格式,供计算识别的,字符是供人类观看的内容。

五、字符集:即各种各个字符的集合,也就是说哪些汉字,字母(A、b、c)和符号(空格、引号..)会被收入标准中。

六、编码

    规定每个“字符”分别用一个字节还是多个字节存储,用哪些字节来存储,这个规定就叫做“编码”。(其实际是对字符集中字符进行编码,即:每个字符用二进制在计算中表示存储);

通俗的说:编码就是按照规则对字符进行翻译成对应的二进制数,在计算器中运行存储,用户看的时候(比如浏览器),在用对应的编码解析出来用户能看懂的;

七、编码格式

    字节和字符之间转换,参照的规则就是编码格式。如,Unicode编码共有三种具体实现,分别为utf-8,utf-16,utf-32,其中utf-8占用一到四个字节,utf-16占用二或四个字节,utf-32占用四个字节。

原文地址:https://www.cnblogs.com/damoblog/p/14368247.html