
有哪些编码方式_简述常用的编码方式1、ASCII码。
学过计算机的人都知道ASCII码,一共有128个码,用一个字节的低7位来表示。0~31是换行符、回车删除等控制字符。32~126为打印字符,可用键盘输入并显示。
2、ISO-8859-1
显然128个字符是不够的,所以ISO制定了一些基于ASCII码的列标准来扩展ASCII码。分别是ISO-8859-1~ISO-8859-15,其中ISO-8859-1涵盖了西欧语言中的大部分字符,应用最为广泛。ISO-8859-1仍然是单字节代码,总共可以表示256个字符。
3、GB2312
它的全称是《信息交换用汉字编码字符集基本集》,是双字节代码。总编码范围为A1-F7,其中A1-A9为符号区,共包含682个符号,B0-F7为汉字区,共包含6763个汉字。
4、GBK
全称是《汉字内码扩展规范》,是国家技术监督局为windows95制定的新的汉字内码规范。它的出现是扩展了GB2312,增加了更多的汉字。其编码范围为8140~FEFE(不含XX7F),共23940个码点,可代表21003个汉字。其编码兼容GB2312,也就是说兼容GB2312。
5、GB18030
全称是《信息交换用汉字编码字符集》,是我国强制性标准。可以是单字节、双字节或四字节编码,其编码兼容GB2312编码。虽然这是一个国家标准,但在实际应用系统中应用并不广泛。
6、UTF-16
说到UTF,就必须提到Unicode(UniversalCode统一码)。ISO试图创建一个全新的超级语言词典,通过它,世界上所有的语言都可以相互翻译。你可以想象这本字典有多复杂。有关Unicode的详细规范,请参考相应的文档。Unicode是Java和XML的基础。下面详细介绍Unicode在计算机中的存储形式。
UTF-16专门定义了计算机中Unicode字符的访问方法。UTF-16使用两个字节来表示Unicode转换格式。这是固定长度的表示,任何字符都可以用两个字节来表示。两个字节是16位,所以叫UTF-16。UTF-16表示字符非常方便,每两个字节代表一个字符,这大大简化了字符串操作中的运算,这也是Java在内存中使用UTF-16作为字符存储格式的一个非常重要的原因。
7、UTF-8
UTF-16使用两个字节来表示一个字符。虽然表示起来非常简单方便,但也有其不足之处。一个字节可以代表很大一部分字符。现在需要两个字节来表示,存储空间增加了一倍。今天网络带宽还是很有限的,这样会增加网络传输的流量,是不必要的。另一方面,UTF-8采用可变长度技术,并且每个编码区域具有不同的码长。不同类型的字符可以由1~6个字节组成。
UTF-8有以下编码规则:
如果一个字节的最高位(第8位)为0,则意味着它是一个ASCII字符(00-7F)。可以看出,所有的ASCII码都是UTF-8。
如果一个字节以11开始,连续1的个数就意味着这个字符的字节数,例如110。









