公共基础知识笔记:文件编码与解码
一、字符集
字符: 字符指类字形单位或符号,包括字母、数字、运算符号、标点符号和其他符号,以及一些功能性符号。字符是电子计算机或无线电通信中字母、数字、符号的统称,其是数据结构中最小的数据存取单位。
字符集: 是一类字符的集合,字符集种类较多,每个字符集包含的字符个数不同。
二、编码(encode)
是指将字符集中的字符按照字符集所设置的转换方式将字符转换为计算机所能接受并存储的二进制格式。
三、解码(decode)
是指将计算几所存储的二进制转换为字符集中所对应的字符。
四、为什么要编码与解码
因为在计算机的世界里数据是以二进制的形式进行传输与储存,但是当我们使用这些信息的时候这个信息就需要以字符的形式来展现给我们,例如我们现在可以看到的所有文字(其实就是字符,后文称字符不在解释),就是转码后的结果。为了将我们看到的字符转化为计算机世界中的数据,我们需要把字符进行编码,当读取时我们就需要把二进制数据解码为字符。
五、为什么需要字符集
字符集就是计算机语言与人类语言系统的一本字典,每一个字符集约定了人类语言系统的范围,也就是字符的范围,不同的人类语言体系转化为计算机语言体系都需要经过字符集的转换,由此互相转换,将数据在两个世界中进行交流。
六、乱码产生的原因
很多时候我们会遇到乱码,这些乱码产生的原因就是在解码和转码过程中使用了不同的字符集去转换,因此解码后的数据并不能正确的被人类语言系统所识别,就此产生了乱码。
七、附:编码与解码的关系
总结: 解码与编码的码是机器码(二进制),人类语言转为机器码就是编码,机器码转为人类语言就是解码,字符集是机器码和人类语言转化的字典,描述了人类语言与机器码之间的转换关系。后续我们在继续介绍常见的字符集。