- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
几种常见的编码格式为什么要编码不知道大家有没有想过一个问题,那就是为什么要编码?我们能不能不编码?要回答这个问题必须要回到计算机是如何表示我们人类能够理解的符号的,这些符号也就是我们人类使用的语言。由于人类的语言有太多,因而表示这些语言的符号太多,无法用计算机中一个基本的存储单元—— byte 来表示,因而必须要经过拆分或一些翻译工作,才能让计算机能理解。我们可以把计算机能够理解的语言假定为英语,其它语言要能够在计算机中使用必须经过一次翻译,把它翻译成英语。这个翻译的过程就是编码。所以可以想象只要不是说英语的国家要能够使用计算机就必须要经过编码。这看起来有些霸道,但是这就是现状,这也和我们国家现在在大力推广汉语一样,希望其它国家都会说汉语,以后其它的语言都翻译成汉语,我们可以把计算机中存储信息的最小单位改成汉字,这样我们就不存在编码问题了。所以总的来说,编码的原因可以总结为:计算机中存储信息的最小单元是一个字节即 8 个 bit,所以能表示的字符范围是 0~255 个人类要表示的符号太多,无法用一个字节来完全表示要解决这个矛盾必须需要一个新的数据结构 char,从 char 到 byte 必须编码如何“翻译”明白了各种语言需要交流,经过翻译是必要的,那又如何来翻译呢?计算中提拱了多种翻译方式,常见的有 ASCII、ISO-8859-1、GB2312、GBK、UTF-8、UTF-16 等。它们都可以被看作为字典,它们规定了转化的规则,按照这个规则就可以让计算机正确的表示我们的字符。目前的编码格式很多,例如 GB2312、GBK、UTF-8、UTF-16 这几种格式都可以表示一个汉字,那我们到底选择哪种编码格式来存储汉字呢?这就要考虑到其它因素了,是存储空间重要还是编码的效率重要。根据这些因素来正确选择编码格式,下面简要介绍一下这几种编码格式。ASCII 码学过计算机的人都知道 ASCII 码,总共有 128 个,用一个字节的低 7 位表示,0~31 是控制字符如换行回车删除等;32~126 是打印字符,可以通过键盘输入并且能够显示出来。ISO-8859-1128 个字符显然是不够用的,于是 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 个汉字,它的编码是和 GB2312 兼容的,也就是说用 GB2312 编码的汉字可以用 GBK 来解码,并且不会有乱码。GB18030全称是《信息交换用汉字编码字符集》,是我国的强制标准,它可能是单字节、双字节或者四字节编码,它的编码与 GB2312 编码兼容,这个虽然是国家标准,但是实际应用系统中使用的并不广泛。UTF-16说到 UTF 必须要提到 Unicode(Universal Code 统一码),ISO 试图想创建一个全新的超语言字典,世界上所有的语言都可以通过这本字典来相互翻译。可想而知这个字典是多么的复杂,关于 Unicode 的详细规范可以参考相应文档。Unicode 是 Java 和 XML 的基础,下面详细介绍 Unicode 在计算机中的存储形式。UTF-16 具体定义了 Unicode 字符在计算机中存取方法。UTF-16 用两个字节来表示 Unicode 转化格式,这个是定长的表示方法,不论什么字符都可以用两个字节表示,两个字节是 16 个 bit,所以叫 UTF-16。UTF-16 表示字符非常方便,每两个字节表示一个字符,这个在字符串操作时就大大简化了操作,这也是 Java 以 UTF-16 作为内存的字符存储格式的一个很重要的原因。UTF-8UTF-16 统一采用两个字节表示一个字符,虽然在表示上非常简单方便,但是也有其缺点,有很大一部分字符用一个字节就可以表示的现在要两个字节表示,存储空间放大了一倍,在现在的网络带宽还非常有限的今天,这样会增大网络传输的流量,而且也没必要。而 UTF-8 采用了一种变长技术,每个编码区域有不同的字码长度。不同类型的字符可以是由 1~6 个字节组成。UT
您可能关注的文档
- 关于EEPROM的应用总结介绍.doc
- 关于HTML制作网页的论文 2介绍.doc
- 关于IBM_X3650_M4机型安装windows2003的方法课件.docx
- 关于java和web项目中的相对路径问题介绍.doc
- 关于keil4ARM 通过Jlink在线调试的问题介绍.doc
- 关于Labwindows的多线程技术课件.docx
- 关于matlab安装问题集中解决 文档安装不上以及打不开课件.docx
- 关于watch point使用课件.docx
- 关于癌症的生动有趣的解析介绍.doc
- 关于磁盘的知识介绍.doc
- GB/T 45498.2-2025中华人民共和国社会保障卡一卡通规范 第2部分:应用规范.pdf
- GB/T 37507-2025项目、项目群和项目组合管理项目管理指南.pdf
- 《GB/T 45498.3-2025中华人民共和国社会保障卡一卡通规范 第3部分:安全规范》.pdf
- 中国国家标准 GB/T 37507-2025项目、项目群和项目组合管理项目管理指南.pdf
- 中国国家标准 GB/T 20236-2025非金属材料的聚光加速户外暴露试验方法.pdf
- 《GB/T 20236-2025非金属材料的聚光加速户外暴露试验方法》.pdf
- 《GB/T 9065.2-2025液压传动连接 软管接头 第2部分:24°锥形》.pdf
- 中国国家标准 GB/T 33523.600-2025产品几何技术规范(GPS) 表面结构:区域法 第600部分:区域形貌测量方法的计量特性.pdf
- 《GB/T 33523.600-2025产品几何技术规范(GPS) 表面结构:区域法 第600部分:区域形貌测量方法的计量特性》.pdf
- GB/T 33523.600-2025产品几何技术规范(GPS) 表面结构:区域法 第600部分:区域形貌测量方法的计量特性.pdf
文档评论(0)