字符:各种文字和符号的总称,包括各个国家文字、标点符号、图形符号、数字等。
字符集:是多个字符的集合,字符集种类较多,每个字符集包含的字符个数不同,常见字符集有:ASCII字符集、GB2312字符集、Unicode字符集等。
使用哪些字符,字母和符号会被收入标准中。不同字符集中包含的字符个数不同。
编码字符集:计算机要准确的处理各种字符集文字,需要进行字符编码,以便计算机能够识别和存储各种文字。
字符集只是字符的集合,不一定适合作网络传送、处理,有时须经编码后才能应用。在一个字库表中,每一个字符都有一个对应的二进制地址,而编码字符集就是这些地址的集合。
规定每个“字符”分别用一个字节还是多个字节存储,用哪些字节来存储,这个规定就叫做“编码”。
编码:我们可以选用任意类型的编码方式将字符转换成一串二进制数,这个过程就是编码,我们也可以称之为加密过程,无论使用哪一种编码方式进行编码,最终都是产生计算机
可识别的二进制数,但如果编码规范的字库表不包含目标字符,则无法在编码字符集中找到对应的二进制数。这将导致不可逆的乱码!例如:像ISO-8859-1的字库表中不包含中文,
因此哪怕将中文字符使用ISO-8859-1进行编码,再使用ISO-8859-1进行解码,也无法显示出正确的中文字符。
解码:一串二进制数,使用一种编码方式,转换成字符,这个过程我们称之为解码。就像解开密码一样,程序员可以选用任意的编码方式进行解码,但往往只有一种编码方式可以
解开密码显示出正确的文字,而使用错误的编码方式,产生其他不合理的字符,这就是我们通常说的————乱码!
F2类似于F1的反函数,不同F会有不同的字符集,比如ASCII就无法编码中文,因为中文不在它的字符集内,不同的F编码出来的二进制也不同。
一个字符可以属于多个字符集,故也可以采用多种编码方式,即多种F1。但一个二进制通常对应一种解码方式。
1. ASCII编码
原文:https://www.cnblogs.com/yanghh/p/13139147.html