编码的重要作用
计算机只能处理数字,如果想让计算机处理人类语言,则需要将字符转换为数字,而计算机编码就是将字符转换为数字的过程。
编码还可以用于压缩数据,以便更有效地存储和传输数据。
常见的编码方式
ASCII 码
ASCII 码,可以表示 128 个字符,用一个字节的低 7 位表示,0 ~ 31
是控制字符,比如 换行、回车、删除
等;32~126 是打印字符,可以通过键盘输入并且能够显示出来。
ISO-8859-1
128 个字符显然是不够用的,于是 ISO 组织在 ASCII 码基础上又制定了一些列标准用来扩展 ASCII 编码,它们是 ISO-8859-1 ~ ISO-8859-15,其中 ISO-8859-1 涵盖了大多数西欧语言字符,所以应用的最广泛。ISO-8859-1 仍然是单字节编码,它总共能表示 256 个字符。
GB2312
全称是《信息交换用汉字编码字符集 基本集》,它是双字节编码,总的编码范围是 A1-F7,其中从 A1-A9 是符号区,总共包含 682 个符号,从 B0-F7 是汉字区,包含 6763 个汉字。
GBK
全称是《汉字内码扩展规范》,是国家技术监督局为 windows95 所制定的新的汉字内码规范,它的出现是为了扩展 GB2312,加入更多的汉字,它的编码范围是 8140~FEFE(去掉 XX7F)总共有 23940 个码位,它能表示 21003 个汉字。
GBK 兼容 GB2312,也就是说用 GB2312 编码的汉字可以用 GBK 来解码,并且不会有乱码。
GB18030
全称是《信息交换用汉字编码字符集》,是我国的强制标准,它可能是单字节、双字节或者四字节编码。
虽然是国家标准,但是实际应用系统中使用的并不广泛。
GB18030 兼容 GB2312。
UTF-16
说到 UTF 必须要提到 Unicode(Universal Code 统一码),ISO 试图想创建一个全新的超语言字典,世界上所有的语言都可以通过这本字典来相互翻译。Unicode 可以表达的字符非常多,需要用多个字节来存储。
UTF-16 意味着用两个字节来表示 Unicode 字符,两个字节是 16 个 bit,所以叫 UTF-16。
UTF-8
有很大一部分字符用一个字节就可以表示,UTF-16 统一采用两个字节表示一个字符,存储空间放大了一倍,造成浪费。UTF-8 采用了一种变长技术,每个编码区域有不同的字码长度,不同类型的字符可以是由 1~6 个字节组成。
交流学习
如果有疑问或想和我交流,欢迎扫描下方二维码
更多与编码技术相关的博文:编码与解码 - 腐蚀脚本
转载声明:本文允许转载,原文链接:认识 ASCII 编码 - 腐蚀脚本
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。