中文编码:GB2312编码、GBK编码、GB18030编码

2016-09-01 0 By ADMIN

一、GB 2312编码

中华人民共和国国家标准简体中文字符集,全称《信息交换用汉字编码字符集·基本集》,又称GB0或GB 2312 80。
由中国国家标准总局发布,1981年5月1日实施。
GB 2312编码通行于中国大陆;新加坡等地也采用此编码。中国大陆几乎所有的中文系统和国际化的软件都支持GB 2312。

1、收录

GB 2312标准共收录6763个汉字,其中一级汉字3755个,二级汉字3008个;同时收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个字符。
GB 2312的出现,基本满足了汉字的计算机处理需要,它所收录的汉字已经覆盖中国大陆99.75%的使用频率。
但对于人名、古汉语等方面出现的罕用字和繁体字,GB 2312不能处理,因此后来GBK及GB 18030汉字字符集相继出现以解决这些问题。

2、字节结构

每个汉字及符号以两个字节来表示。第一个字节称为“高位字节”,第二个字节称为“低位字节”。

二、GBK编码

汉字内码扩展规范,全名为《汉字内码扩展规范(GBK)》1.0版。
由中华人民共和国全国信息技术标准化技术委员会1995年12月1日制订,国家技术监督局标准化司和电子工业部科技与质量监督司1995年12月15日联合以《技术标函[1995]229号》文件的形式公布。
GBK 只为“技术规范指导性文件”,不属于国家标准。国家质量技术监督局于2000年3月17日推出了GB 18030-2000标准,以取代GBK。
GBK的K为汉语拼音Kuo Zhan(扩展)中“扩”字的声母。英文全称Chinese Internal Code Extension Specification。

1、收录

GBK共收录21886个汉字和图形符号,其中汉字(包括部首和构件)21003个,图形符号883个。
GBK向下完全兼容GB2312-80编码。

2、字节结构

字符有一字节和双字节编码,00–7F范围内是第一个字节,和ASCII保持一致,此范围内严格上说有96个文字和32个控制符号。

三、GB 18030编码

本规格的初版“GB 18030-2000《信息技术信息交换用汉字编码字符集基本集的扩充》”是由中华人民共和国信息产业部电子工业标准化研究所起草,由国家质量技术监督局于2000年3月17日发布。在GBK基础上增加了CJK统一汉字扩充A的汉字。
现行版本为国家质量监督检验总局和中国国家标准化管理委员会于2005年11月8日发布,2006年5月1日实施;是在GB18030-2000基础上增加了CJK统一汉字扩充B的汉字。

1、收录

GB 18030,全称:“国家标准GB 18030-2005《信息技术中文编码字符集》”,是中华人民共和国现时最新的变长度多字节字符集。
对GB 2312-1980完全向后兼容,与GBK基本向后兼容;支持GB 13000(Unicode)的所有码位;共收录汉字70,244个。
支持中国国内少数民族文字,不需要动用造字区。
汉字收录范围包含繁体汉字以及日韩汉字。
编码空间庞大,最多可定义161万个字符。

2、字节结构

采用变长多字节编码,每个字可以由1个、2个或4个字节组成。

四、GBK编码和UTF-8编码关系

目前国内一些发行的WEB开源框架,都提供这两种编码格式。
不过既然UTF-8是世界通用的,支持全世界的字符编码;为什么还有人选择使用GBK这种主要为针对中文的编码格式?

中文领域GBK比UTF-8存储小

GBK是字节结构定长的编码;每个字符占用两个字节的编码,并收录了基本能接触到的所有中文字,和其他部分字符的扩充。
UTF-8可变多字节编码;多数中文字符都会占用不小于两个字节的编码。
所以如果软件不考虑兼容国外字符的话,使用GBK会减少代码传输和代码存储。

GB 18030-2000《信息技术信息交换用汉字编码字符集基本集的扩充的更多相关文章

  1. GB2312汉字编码字符集对照表

    第01区 +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F A1A0 . . ・ ˉ ˇ ¨ " 々 ― - | - ' ' A1B0 &quo ...

  2. 2015/12/30 字符集 ASCII 到Unicode

    ——每个软件开发人员应该无条件掌握的知识! ——Unicode伟大的创想! 相信大家一定碰到过,打开某个网页,却显示一堆像乱码,如"бЇЯАзЪСЯ"."�??????? ...

  3. GB18030 字符集

    gb18030 编辑 国家标准GB18030-2005<信息技术 中文编码字符集>是我国继GB2312-1980和GB13000.1-1993之后最重要的汉字编码标准,是我国计算机系统必须 ...

  4. GB2312、GBK、GB18030 这几种字符集的主要区别

    1 GB2312-80 GB 2312 或 GB 2312-80 是中国国家标准简体中文字符集,全称<信息交换用汉字编码字符集·基本集>,又称 GB 0,由中国国家标准总局发布,1981 ...

  5. 字符集和字符编码(Charset & Encoding)

    字符集和字符编码(Charset & Encoding)[转] 1.基础知识 计算机中储存的信息都是用二进制数表示的:而我们在屏幕上看到的英文.汉字等字符是二进制数转换之后的结果.通俗的说,按 ...

  6. 字符编码那点事:快速理解ASCII、Unicode、GBK和UTF-8

    原作者:阮一峰(ruanyifeng.com),现重新整理发布,感谢原作者的无私分享. 1.引言 今天中午,我突然想搞清楚 Unicode 和 UTF-8 之间的关系,就开始查资料. 这个问题比我想象 ...

  7. 转:字符集和字符编码(Charset & Encoding)

    转自:http://www.cnblogs.com/skynet/archive/2011/05/03/2035105.html ——每个软件开发人员应该无条件掌握的知识! ——Unicode伟大的创 ...

  8. C#编程总结(九)字符编码

    C#编程总结(九)字符编码 相信大家一定遇到过乱码的问题,为什么会乱码呢?输出的数据怎么就跟输入的不一样呢? 最近在总结加密问题,也遇到了同样的困扰.所以今天来集中解决这个问题. 什么是字符? 字符是 ...

  9. 字符编码和python文件操作

    字符编码和文件操作 目录 字符编码和文件操作 1. 字符编码 1.1 什么是字符编码 1.2 字符编码的发展史 1.2.1 ASCII码 1.2.2 各国编码 1.2.3 Unicode 1.3 字符 ...

随机推荐

  1. 20182217刘洪宇EXP3_免杀原理

    免杀 一般是对恶意软件做处理,让它不被杀毒软件所检测.也是渗透测试中需要使用到的技术. 要做好免杀,就时清楚杀毒软件(恶意软件检测工具)是如何工作的.AV(Anti-virus)是很大一个产业.其中主 ...

  2. Vulkan移植GpuImage(三)从A到C的滤镜

    前面移植了几个比较复杂的效果后,算是确认了复杂滤镜不会对框架造成比较大的改动,开始从头移植,现已把A到C的所有滤镜用vulkan的ComputeShader实现了,讲一些其中实现的过程. Averag ...

  3. Fastbin attack 总结

    Fastbin attack 本文参考了ctf-wiki 和glibc 要了解fastbin attack,我们先要了解fastbin的机制.由于libc2.26后加入了tcache机制,我们这里就只 ...

  4. 8. Centos 7 图像化界面

    Step 1:安装"X Window System" yum groupinstall "X Window System" 当出现 Complete!说明这里安 ...

  5. Day11_54_泛型(Generic)

    泛型 * Java泛型设计原则:只要在编译时期没有出现警告,那么运行时期就不会出现ClassCastException异常. * 泛型:把类型明确的工作推迟到创建对象或调用方法的时候才去明确的特殊的类 ...

  6. Alpine镜像

    Alpine Linux 是一个面向安全,轻量级的基于musl libc与busybox项目的Linux发行版. Alpine 提供了自己的包管理工具 apk,可以通过 https://pkgs.al ...

  7. 使用vue-element-admin框架从后端动态获取菜单

    1.前言 ​ vue-element-admin是一个纯前端的框架,左侧菜单是根据路由生成的.实际开发中经常需要根据当前登陆人员的信息从后端获取菜单进行展示,本文将详细介绍如何实现该功能. 2.详解 ...

  8. 鸿蒙HI3516-驱动开发(1.1-LTS)

    代码在:https://gitee.com/kwydm/open-harmony-taurus 目录大致结构 1.驱动开发创建目录://vendor/huawei/hdf/LED/src 新建Make ...

  9. hdu3035 最小割转换成最短路

    题意:       给你一个平面图,要求从求出从左上角到右下角的最小割. 思路:       如果大意的可能直接上来一遍最大流,然后就会各种悲剧的MLE,TLE,其实这个题目可以用到有个论文里面的那个 ...

  10. UVA11248 网络扩容(枚举割边扩充)

    题意:      给你一个有向图,问你从1到n的最大流是多少?如果流量大于等于C那么直接输出一个串,否则输出只扩充一条边的流量就可以达到1->n大于等于C的所有边,如果扩充不了就输出另一个串.S ...