满意答案

haomingwen

2017.10.03

采纳率:57%    等级:10

已帮助:1369人

我们常说汉字的"内码"与"外码"。

内码是汉字在计算机内部存储,处理和传输用的信息编码。它必须与ASCII码兼容但又不能冲突。

所以把国标码两个字节的最高位置'1',以区别于西文,这就是内码。汉字的输入码称为"外码"。输入码即指我们输入汉字时使用的编码。常见的外码分为数字编码(如区位码),拼音编码和字形编码(如五笔)。

再说区位码,"啊"的区位码是1601,写成16进制是0x10,0x01。这和计算机广泛使用的ASCII编码冲突。为了兼容00-7f的 ASCII编码,我们在区位码的高、低字节上分别加上A0。这样"啊"的编码就成为B0A1。我们将加过两个A0的编码也称为GB2312编码,虽然 GB2312的原文根本没提到这一点。

内码是指操作系统内部的字符编码。早期操作系统的内码是与语言相关的.现在的Windows在内部统一使用Unicode,然后用代码页适应各种语言,"内码"的概念就比较模糊了。我们一般将缺省代码页指定的编码说成是内码。内码这个词汇,并没有什么官方的定义。代码页也只是微软的一种习惯叫法。作为程序员,我们只要知道它们是什么东西,没有必要过多地考证这些名词。

所谓代码页(code page)就是针对一种语言文字的字符编码。例如GBK的code page是CP936,BIG5的code page是CP950,GB2312的code page是CP20936。

Windows中有缺省代码页的概念,即缺省用什么编码来解释字符。例如Windows的记事本打开了一个文本文件,里面的内容是字节流:BA、BA、 D7、D6。Windows应该去怎么解释它呢?是按照Unicode编码解释、还是按照GBK解释、还是按照BIG5解释,还是按照ISO8859-1 去解释?如果按GBK去解释,就会得到"汉字"两个字。按照其它编码解释,可能找不到对应的字符,也可能找到错误的字符。所谓"错误"是指与文本作者的本意不符,这时就产生了乱码。

答案是Windows按照当前的缺省代码页去解释文本文件里的字节流。缺省代码页可以通过控制面板的区域选项设置。记事本的另存为中有一项ANSI,其实就是按照缺省代码页的编码方法保存。

Windows的内码是Unicode,它在技术上可以同时支持多个代码页。只要文件能说明自己使用什么编码,用户又安装了对应的代码页,Windows就能正确显示,例如在HTML文件中就可以指定charset。

有的HTML文件作者,特别是英文作者,认为世界上所有人都使用英文,在文件中不指定charset。如果他使用了0x80-0xff之间的字符,中文Windows又按照缺省的GBK去解释,就会出现乱码。这时只要在这个html文件中加上指定charset的语句,例如:

如果原作者使用的代码页和ISO8859-1兼容,就不会出现乱码了。????????????????????????

进一步的参考资料

"Short overview of ISO-IEC 10646 and Unicode" (http://www.nada.kth.se/i18n/ucs/unicode-iso10646-oview.html)

12分享举报

mysql外码内码定义_内码和外码分别是什么啊?相关推荐

  1. mysql 内联函数_内联函数 - freeboy小亮 - 博客园

    (1)什么是内联函数? 内联函数是指那些定义在类体内的成员函数,即该函数的函数体放在类体内. (2)为什么要引入内联函数? 当然,引入内联函数的主要目的是:解决程序中函数调用的效率问题.另外,前面我们 ...

  2. mysql主键被强制定义_主键约束用来强制数据的( )完整性。_学小易找答案

    [其它]上传excel实训3. [单选题]在一张表中可以创建_________个集聚索引. [单选题]日期时间型数据类型(datetime)的长度是( ). [其它]数据分析与函数练习表(控辍表).x ...

  3. 工业机器人演示码垛和卸垛_浅谈饲料自动码垛机的应用及正确操作方法

    说到码垛机,大家脑海中反应的,大概是机械手码垛机吧.其实码垛机可以分为好多种,常见的就是机械手码垛机和高位码垛机.码垛机的用途非常广泛,可以适用于不同车间生产,大大推动工业自动化的前进.今天我们就来说 ...

  4. 内置对象和内置函数_内置假对象

    内置对象和内置函数 尽管模拟对象是进行单元测试的理想工具,但通过模拟框架进行模拟可能会将您的单元测试变成难以维护的混乱. 这种复杂性的根本原因是我们的对象太大. 他们有很多方法,这些方法返回其他对象, ...

  5. c ++内联函数_内联MHTML +数据URI

    c ++内联函数 MHTML and Data URIs in the same CSS file is totally doable and gives us nice support for IE ...

  6. mysql外码是什么意思_数据库中的外键是什么意思?

    展开全部 外键(FK)是用于建立和加强两个表数据之间的链接的一列或多列.通过32313133353236313431303231363533e4b893e5b19e31333433633436将保存表 ...

  7. 4位格雷码的顺序编码_一种基于格雷码的方形QAM星座图编码方法和系统与流程...

    本发明属于测试技术领域,尤其涉及一种基于格雷码的方形QAM星座图编码方法和系统. 背景技术: 矢量信号分析中通常采用星座图来表征调制信号质量,星座图中星座点的编码方法直接影响信号解调后的BER(即比特 ...

  8. js 序列化内置对象_内置序列化技术

    js 序列化内置对象 本文是我们名为" 高级Java "的学院课程的一部分. 本课程旨在帮助您最有效地使用Java. 它讨论了高级主题,包括对象创建,并发,序列化,反射等. 它将指 ...

  9. 技术导航网站源码_qq技术导航_小刀娱乐网源码

    今天给大家带来的是2020最新版QQ技术导航网源码,包含各大QQ技术网站qq技术导航,类似于小刀娱乐网的一个源码. 小刀娱乐网源码是asp+access/mssql架构网站系统,电脑版,手机版,平板版 ...

最新文章

  1. 2020 CCPC-Wannafly Winter Camp Day1 总结
  2. 7.3 TensorFlow笔记(基础篇):加载数据之从队列中读取
  3. .实现 linkedlist 类java_面试官:兄弟,说说 ArrayList 和 LinkedList 有什么区别
  4. nginx+memcache+tomcat配置(新手笔记)
  5. Linux课程笔记 Crond介绍
  6. [转载] 基本概念:java中的访问修饰符
  7. 小乌龟Git工具使用
  8. 怎么清理ug10注册表_注册表清理优化工具用它就够了,赶紧上车!
  9. 手持式矢量网络分析仪
  10. Android中妙用Selector实现颜色图片切换效果
  11. 分析时间序列数据的六个图表
  12. IE8浏览器兼容问题(日常经验总结)
  13. 以色列量子计算软件公司,与欧洲机构合作开发薛定谔猫状态纠错技术
  14. 剑御九州手游辅助升级工具 提升战力材料介绍
  15. 题解 P2026 【求一次函数解析式】
  16. SpringBoot常用注解
  17. javascript根据id 取出元素的值
  18. 1.2生成树协议STP
  19. c语言头文件包含嵌套问题和包含原则
  20. 【用户运营】用这4个最佳客户服务策略,减少客户流失率

热门文章

  1. ckplayer ajax,谁能帮我做一个脚本啊?能让这个网页视频播放可以拉动进度条 可以快进...
  2. Head First Servlet JSP读书笔记
  3. python-华三防火墙过期策略统计
  4. Java 简易五子棋
  5. 【单片机仿真项目】LED 闪烁灯(proteus原理图+keil代码)
  6. Unity3D自动旋转屏幕
  7. 影视小程序详细搭建教学(非微擎)
  8. 形容词,名词记忆(四):al后缀常用词
  9. 华为6个月试用期经历
  10. GraphicsLab Project之基于物理的着色系统(Physical based shading) - 基于图像的光照(Image Based Lighting)(Diffuse篇)