中文系统bgk 回忆上次内容
  • 汉字字形通过
  • 点阵式打字机
  • 像素级寻址的屏幕
  • 进入了计算机的世界
 

 
添加图片注释,不超过 140 字(可选)
 
  • 在海峡对岸的台湾同胞
  • 也进入了汉字时代
 
  • 他们会使用GB2312编码吗?
  • 能互通吗?
 
中国台湾
  • BIG5 码
  • 是由 5 个公司联合制作的
 
  • 收录次序 取决于 频率
  • 然后是 笔画数
  • 然后是 康熙字典
 
  • 同时用 BIG5 编码和解码也是没有问题的
  • 但如果用BIG5编码
  • 却用gb2312解码就会有问题
 

 
添加图片注释,不超过 140 字(可选)
 
  • 不过存储的内容在文件里
  • 系统不知道用什么解码时
  • 默认自动会用 gb2312 解码
  • 这就造成了自动乱码
 
反之亦然
  • 我们用 gb2312 编码的文字
  • 用 gb2312 可以打开
  • 但是用 BIG5 打开就是乱码
  • 也需要转化
 

 
添加图片注释,不超过 140 字(可选)
 
  • 转化工具是有的
  • 能解决问题但很麻烦
  • 大量的输入输出编码解码的问题
  • 令人头大
 

 
添加图片注释,不超过 140 字(可选)
 
  • 确实麻烦
解决办法
  • 麻烦的地方正是机会所在

 
添加图片注释,不超过 140 字(可选)
 
  • 当时如果日文游戏或者台湾地区的游戏不能玩
  • 可能是因为字符编码格式不一致
  • 可以用南极星调整字符编码格式
  • 把不同编码格式进行转化
  • 把字节按照正确的方式进行解码
  • 就可以玩啦
 
  • 没有个标准整合一下吗?
GBK
  • GBK 即汉字内码扩展规范
  • 在GB2312的基础上扩展了繁体字符集
  • K 为汉语拼音 Kuo Zhan(扩展)中“扩”字的声母
  • 英文全称 Chinese Internal Code Specification
  • 最初是微软搞的
  • 虽然不是国家标准
  • 却是事实上的技术规范
 

 
添加图片注释,不超过 140 字(可选)
 
  • 共收入 21886 个汉字和图形符号
  • GB 2312 中的全部汉字、非汉字符号
  • BIG5 中的全部汉字(繁体兼容 GBK1)
  • 将 汉字、日本汉字、朝鲜汉字融合了
  • 合计 20902 个汉字
 
  • 标准并不是一蹴而就的
标准的烟花
  • 正如ASA X3.4-1963
  • 到 ASA X3.4-1965
  • 最终到ascii
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • GB也在不断进化
  • 从GB/T 1355-86
  • 到GB/T 1355-2021
  • 这是小麦粉标准的进化
 
 
 
  • 从GB2312-1986
  • 再到GBK
  • 这是中文字符标准的进化
 
 
  • 但是还是有问题
  • GBK虽然兼容了BIG5 中的全部汉字
  • 但是无法兼容编码
  • 用GBK打开BIG5编码的文件还是乱码
 
 
问题
  • 如果新GBK兼容了BIG5编码
  • 就无法向前兼容gb2312
 

 
添加图片注释,不超过 140 字(可选)
 
  • 这无解了吗?
  • 时间自会给我们答案
  • 老天自有安排!
 
推荐一款 点阵字库
  • 中文点阵
  • 最小也需要 7x7 像素
 

 
添加图片注释,不超过 140 字(可选)
 
  • 这个风格很独特
字体辨识度
  • 字体辨识度

 
添加图片注释,不超过 140 字(可选)
字体样式
  • 1994年的《魔兽争霸》
  • 像素字体在RGB显卡的支持下
  • 字体不但可以有衬线
  • 而且可以有立体感
 
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 配色也很细腻
中文隶书
  • 智冠公司出品的《三国演义》

 
添加图片注释,不超过 140 字(可选)
 
  • 使用隶书和车马符号
  • 代表那个三国时代
 
终端时代的中文超文本编辑器

 
添加图片注释,不超过 140 字(可选)
 
  • 当时的wps系统
wps
  • 当时还没有所见即所得

 
添加图片注释,不超过 140 字(可选)
 
  • 使用一些编辑标记
  • 制作富文本
 

 
添加图片注释,不超过 140 字(可选)
 
  • 只有打印预览才能查看效果
中文之星

 
添加图片注释,不超过 140 字(可选)
 
  • 还可以做艺术字特效
总结
  • 中国的简体和繁体汉字
  • 字符数量都超级大
  • 彼此还认对方为乱码
 
  • 如果有一种编码 将所有的字符都能编进去就好了
  • 中日韩(CJK)
  • 简体繁体
  • 欧洲各种拼音
  • 梵文
  • 阿拉伯文
  • 等等等都包括进去
 

 
添加图片注释,不超过 140 字(可选)
 


[oeasy]python0127_中文系统_gbk_BIG5_南极星_内码转化的更多相关文章

  1. 搭建私有YUM仓库_及_内网镜像站

    搭建私有YUM仓库_及_内网镜像站 搭建私有YUM仓库(自己定制的rpm包)私有yum仓库环境系统版本:centos7.4 IP:192.168.1.47 #最好能上公网 私有yum仓库服务端配置 第 ...

  2. 解决Inno Setup制作中文安装包在非中文系统上显示乱码的问题

    尼玛,好几个月没更新了.囧... 目前我司新的客户端开发已经接近尾声,该改的bug已经改完,该重构的地方也都差不多了.视觉效果也已经根据美工的样式改完了.所以,就差制作安装包了.正所谓万事俱备,只欠东 ...

  3. 用Python爬虫爬取广州大学教务系统的成绩(内网访问)

    用Python爬虫爬取广州大学教务系统的成绩(内网访问) 在进行爬取前,首先要了解: 1.什么是CSS选择器? 每一条css样式定义由两部分组成,形式如下: [code] 选择器{样式} [/code ...

  4. QT字符编码转换,可用于中文内码传输

    串口.TCP.UDP传输中文字符时,先将字符串转内码.客户端接收到数据后,将内码转为字符串就OK了 QByteArray CommonFunction::strToInterCode(constQSt ...

  5. 汉字与区位码互转(天天使用的String存储的是内码),几个常见汉字编码,附有读书笔记

    汉=BABA(内码)=-A0A0=2626(区位码)字=D7D6(内码)=-A0A0=5554(区位码) 各种编码查询表:http://bm.kdd.cc/ “啊”字是GB2312之中的第一个汉字,会 ...

  6. GB2312编码(为什么要加2020H、8080H,外码→内码→交换码→字形码)

    为什么要加上2020H和8080H? 区位码.内码.国标码怎么转换非常简单,但是令人迷惑的是为什么要那么转换?这种转换不可能平白无故地那样转换! 我搜索很多资料,找到最好的解释,总结如下: 首先,注意 ...

  7. 汉字与区位码互转(天天使用Delphi的String存储的是内码,Windows记事本存储的文件也是内码),几个常见汉字的各种编码,utf8与unicode的编码在线查询,附有读书笔记 good

    汉=BABA(内码)=-A0A0=2626(区位码)字=D7D6(内码)=-A0A0=5554(区位码) 各种编码查询表:http://bm.kdd.cc/ 汉(记住它,以后碰到内存里的数值,就会有敏 ...

  8. STM32时钟系统的配置寄存器和源码分析

    一.时钟系统 概述 时钟是单片机运行的基础,时钟信号推动单片机内各个部分执行相应的指令,时钟系统就是CPU的脉搏,决定cpu速率. STM32有多个时钟来源的选择,为什么 STM32 要有多个时钟源呢 ...

  9. 基于双向BiLstm神经网络的中文分词详解及源码

    基于双向BiLstm神经网络的中文分词详解及源码 基于双向BiLstm神经网络的中文分词详解及源码 1 标注序列 2 训练网络 3 Viterbi算法求解最优路径 4 keras代码讲解 最后 源代码 ...

  10. Slurm任务调度系统部署和测试(源码)(1)

    1. 概述1.1 节点信息2. 节点准备3. 部署NTP服务器4. 部署LDAP服务器5. 部署Munge认证服务6. 部署Mysql数据库服务7. 部署slurm7.1 创建slurm用户7.2 挂 ...

随机推荐

  1. Spring Boot中的 6 种API请求参数读取方式

    使用Spring Boot开发API的时候,读取请求参数是服务端编码中最基本的一项操作,Spring Boot中也提供了多种机制来满足不同的API设计要求. 接下来,就通过本文,为大家总结6种常用的请 ...

  2. 把nacos安装成windows服务

    方式一: 用sc的方式安装和删除服务 摘自:https://blog.csdn.net/qq_33803102/article/details/109024989 sc create nacos st ...

  3. C# XML转Json Json转XML XML 转对象 对象转XML

    对象转XML对象时,只能是一个JObject对象,不能是一个集合对象.如果对象是一个列表集合,需要定义一个根对象比如这样:var obj =new { Root = ListLogs[ListLogs ...

  4. 解决 C# 连接oracle 读出中文乱码的问题

    一开始,我使用odbc连接oracle,发现中文变成了??,这种已经成了??的乱码是不能通过 Text.Encoding的方式来转码的. 1.我到处查资料,发现有说设置客户端 系统变量 把 远程服务器 ...

  5. MyBatis延迟加载策略详解

    延迟加载就是在需要用到数据的时候才进行加载,不需要用到数据的时候就不加载数据.延迟加载也称为懒加载. 优点:在使用关联对象时,才从数据库中查询关联数据,大大降低数据库不必要开销. 缺点:因为只有当需要 ...

  6. MySQL中drop/truncate/delete的区别

    1.Delete语句执行删除的过程是每次从表中删除一行,并且同时将删除操作作为事务记录在日志中保存以便进行进行回滚操作(只删除表数据). delete是DML,执行delete操作时,每次从表中删除一 ...

  7. zabbix笔记_004 监控Windows主机

    zabbix监控Windows主机 zabbix for windows 安装包下载地址: https://www.zabbix.com/cn/download_agents#tab:34 下载zab ...

  8. css之伪元素选择器

    注:本博客内容来自尚硅谷禹神的前端入门课程 什么是伪元素? 很像元素,但不是元素(element),是元素中的一些特殊位置. 伪元素语法中的::可以用:,因为css2中没有明确区分伪类和伪元素,但是s ...

  9. Opencv笔记(11)随机数发生器cv::RNG

    一个随机数对象(RNG)用来产生随机数的伪随机序列.这样做的好处是你可以方便地得到多重伪随机数流.一旦随机数发生器创建,就会开始按需提供产生随机数的"服务",无论是平均分布还是正态 ...

  10. java: 找不到符号 java: Compilation failed: internal java compiler error

    java: 找不到符号 java: Compilation failed: internal java compiler error 1.File---->Setting------>ja ...