unicode 回忆上次内容
  • 中国的简体和繁体汉字
  • 字符数量都超级大
  • 彼此还认对方为乱码
 
  • 如果有一种编码所有的字符都能编进去就好了
  • 中日韩(CJK)
  • 欧洲拼音
  • 梵文
  • 阿拉伯文
  • 卢恩字符
  • 等等等都包括进去
 

 
添加图片注释,不超过 140 字(可选)
 
  • 能有么?
回顾历史
  • 计算机中只有 0 和 1
  • 并且是存储在字节里的
  • 原来只能表示和处理数字
  • 字符无法处理
 
  • 后来某些二进制数固定下来代表某个字符
  • 形成了字符集
  • 从博多码(5bits)到 BCDIC(6bits)
  • 再到 EBCDIC码(8bits) 最后统一于 ascii
 

 
添加图片注释,不超过 140 字(可选)
 
  • 但是 各国家和地区
  • 都有 自己的文字
  • 这一领域 没有 统一的标准
 
  • 所以每个国家和地区
  • 都制定自己的编码标准
  • 想要同时显示 法语字符和西里尔字符 是不可能的
 
  • 同样字节状态 在不同编码格式里 代表不同的字符
  • 都认为对方是乱码
  • 彼此不兼容
 
  • 编码方式有上百种之多
  • 互为乱码
 
分久必合
  • 无法解决的问题背后 可能是机会
  • 1980 年代
  • Xerox(施乐公司) 在 开始尝试一种编码
  • 能融合多语言
 
  • Xerox 字符集包括
  • 拉丁
  • 阿拉伯
  • 希伯来
  • 希腊
  • 西里尔
  • 中日韩字符
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 这个字符集 1988 年进化为 unicode
  • uni的意思是一
 
uni
  • uni 来自于
  • unique
  • unified
  • universal
  • unicorn
  • university
  • uniform
  • unit
  • union
 

 
添加图片注释,不超过 140 字(可选)
 
  • uni-开头的单词都有这个特点
universe
  • universe
  • uni
 
  • verse
  • 旋转
 
  • universe
  • 绕着一个东西转的
  • 从一转化而来的
 
 
  • 一生二 二生三 三生万物

 
添加图片注释,不超过 140 字(可选)
 
  • 后来日语
  • 将universe翻译成宇宙
 
  • 宇宙一词 中文以前就有
  • 上下四方曰宇
  • 古往今来曰宙
 
得一
  • 这个词头计算机领域也有很多很牛的单词
  • unit、unix、unity、unicode
 
  • 这名字得一了啊
  • 少则得,多则惑,是以圣人抱一为天下式
  • 天得一以清,地得一以宁,神得一以灵,谷得一以盈,万物得一以生,侯王得一而以为正
 
  • 这个版本叫做 unicode88
  • 是 16 位的 unicode
 
  • 1989 年
  • Unicode 这个工作组来了一些从大厂来的人
  • 微软和 sun 都来了
 
  • 1991/1/3 日
  • Unicode 委员会在加州成立
 
  • 1991 年 8 月
  • unicode 第一卷发布
 
  • 1992 年 6 月
  • 第 2 卷发布
  • 这里面包含了汉语字符
 
 
  • unicode 委员会 形成
  • Adobe, Apple, Facebook, Google, IBM, Microsoft, Netflix 和 SAP SE 等公司的工程师加入
 

 
添加图片注释,不超过 140 字(可选)
 
  • 字符的全球标准化开始了
基础字符
  • ascii 还是牢牢占据着 0-127 这最关键的位置
  • 紧挨着 ascii 的字符的就是 Latin-1
  • 由 iso-8859-1 西欧、北欧字符集进化而来
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 这其实也 标识出unicode的 编码排序规则
  • 以书写系统为单位
  • 分类和收录
 
 
各种拼音文字
  • 比如卢恩字符

 
添加图片注释,不超过 140 字(可选)
 
  • 再去捋一捋
  • 拉丁字符进化过程吧
 
拉丁字符进化史
发音
词义
埃及圣书体
楔形写法
希腊字符
拉丁字符
alpha
Αα
Aa
beta
房子
Ββ
Bb
gīml
棍子
Γγ
Cc,Gg
dālet
门或者鱼
Δδ
Dd
  • 去看看他们的序号

 
添加图片注释,不超过 140 字(可选)
 
  • 希腊字符比较好找
  • 序号较小
 
  • 不过希腊字符之前只有大写字母
  • 小写字母怎么来的呢?
 
小写字母

 
添加图片注释,不超过 140 字(可选)
 
  • 手写画风固定下来后
  • 又被印刷术 再次固定
 

 
添加图片注释,不超过 140 字(可选)
 
  • 能找到埃及文字的序号吗?
埃及文字
  • unicode 确实给埃及文字排了序号
  • 但是序号很大
  • 而且目前终端没有字型支持
 
 

 
添加图片注释,不超过 140 字(可选)
 
  • 字型文件 实现难度不小
  • 实际需求 也不确定
 
  • 同为 拼音文字的不同书写系统
  • 可能会用到 长得一样的字符
  • 会是一个序号吗?
 
 
书写系统
  • 英文字母、拉丁字母、西里尔文字母
  • 都源自希腊文字母 Omicron
 
  • 不同的书写系统
  • 可能会长相一样的字母
  • 但对应着不同的序号
 

 
添加图片注释,不超过 140 字(可选)
 
  • 虽然字形一模一样
  • 但是属于三个书写系统
  • 希腊文字母
  • 英文字母
  • 西里尔字母
 
 
  • 所以 有不同的序号
持续进化
  • 每个版本都会有些变化
  • 整个编码区域分成若干个 blocks
  • 新版本对于这些 blocks 里面的字符有所增加
 

 
添加图片注释,不超过 140 字(可选)
十二星座
  • 除了字符之外还有很多符号
  • 比如十二个星座
 

 
添加图片注释,不超过 140 字(可选)
 
  • 集装箱 标准化一旦开始
  • 就会 反过来 约束火车轮船飞机
 
  • 你要想 加入这个交流的行列
  • 必须先了解相应的接口
  • 从遵守现有的规则开始
 
 
unicode时代
  • 新编码unicode的时代来了
  • 他会把一切字符吸收进去
 

 
添加图片注释,不超过 140 字(可选)
 
  • 同一个文档
  • 可以既有中文
  • 又有日文
  • 还有韩文
 
  • 一切字符都能正常显示
阴阳太极
  • 易有太极
  • ️☯
 

 
添加图片注释,不超过 140 字(可选)
 
  • 是生两仪
  • ⚊ 陽 (U+268A) ⚋ 陰 (U+268B)
 
  • 两仪生四象
  • ⚌(太陽,U+268C)、⚍(少陰,U+268D)、⚎(少陽,U+268E)、⚏(太陰,U+268F)
 

 
添加图片注释,不超过 140 字(可选)
八卦
  • 四象生八卦
  • ☰ ☱ ☲ ☳ ☴ ☵ ☶ ☷
 

 
添加图片注释,不超过 140 字(可选)
 
  • 如果把
  • ⚊ 陽 (U+268A)当做1
  • ⚋ 陰 (U+268B)当做0
 
  • 顺序是逆序(递减)
  • 从外而内
 
  • 八卦有了
  • 可以重卦么?
 
重卦

 
添加图片注释,不超过 140 字(可选)
 
  • 八八六十四卦

 
添加图片注释,不超过 140 字(可选)
 
  • 看起来都可以玩算卦了
  • 还能做什么呢?
乱来
  • 来随便试一个
print("\u9999")
  • 看看这是什么字?
中日韩字符
  • 中文编码原来是 gbk
  • unicode 现在unicode把中日韩(CJK)当成一组
  • 排序是CJK
  • 位置是unicode.org下方的code chart中找到
 

 
添加图片注释,不超过 140 字(可选)
 
  • 当然关于排序各有各的排法
  • 中国是中日韩
  • 日本是日中韩
  • 韩国是韩中日
 
  • unicode组织的CJK显然综合了东亚文化圈的排名
  • 我仿佛听到卡吉玛
 
所在位置
  • 象形文字数量确实是拼音文字没有办法比的

 
添加图片注释,不超过 140 字(可选)
 
  • 他们听到我们有两万个字母的时候都傻了
融合而来
  • unicode中的文字将
  • 中国汉字
  • 朝鲜汉字
  • 日本汉字
  • 综合起来
 

 
添加图片注释,不超过 140 字(可选)
 
  • 得到一个汉字
  • 那如果有很多异体字怎么办?
回字的几种写法

 
添加图片注释,不超过 140 字(可选)
 
  • 这些都是异体字
  • 或者叫做通假字
  • 在计算机里是如何的呢?
茴香豆

 
添加图片注释,不超过 140 字(可选)
 
  • 在0x4e00到0x9fff这个范围内
  • 基本一个汉字就只有一种写法

 
添加图片注释,不超过 140 字(可选)
总结
  • 字符集
  • 从博多码
  • 到 ascii
  • 再到 8859
  • 各自割据
 
  • 如何把世界上各种字符统进行编码
  • unicode顺势而生不断进化
  • 不过字符总量超过了65536
  • 每个汉字都有位置
 

 
添加图片注释,不超过 140 字(可选)
 
  • 所有汉字里面第一个汉字是什么呢?
  • 我们下次再说!

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


[oeasy]python0128_unicode_字符集_character_set_八卦_星座的更多相关文章

  1. Sharp Memory LCD (ls013b7dh03)驱动

    网上找不到什么靠谱的资料,甚至我调好了夏普原厂和代理商还来找我要demo,  哎,苦逼的码农. lcd_main.c #include "ls013b7dh03.h" #inclu ...

  2. STM32—4线SPI驱动SSD1306 OLED

    文章目录 一.OLED简介 二.驱动SSD1306所需知识 1.引脚介绍 2.通信时序 3.显存GRAM 4.字库 5.SSD1306基本命令 三.代码讲解 1.相关引脚配置 2.模拟SPI通信 3. ...

  3. 怎样让Oracle支持中文? 语言_地域.字符集

    暂时不涉及数据库业务,但是今天入库的时候中文入库报错,考虑可能是字体不支持,留待备用. 来源:Linux社区  作者:robertkun 语言_地域.字符集SIMPLIFIED CHINESE_CHI ...

  4. Windows默认字符集_查询

    https://zhidao.baidu.com/question/32462047.html Windows95. XP……7操作系统自带的都是GBK字符集(含2万余汉字),是完全兼容GB2312( ...

  5. 【DBA-Oracle】更改Oracle数据字符集_转为常用的ZHS16GBK

    A.oracle server 端 字符集查询  select userenv('language') from dual 其中NLS_CHARACTERSET 为server端字符集 NLS_LAN ...

  6. 编写Java程序_找星座朋友应用软件

    一.About the Project 项目介绍 自古以来,人对于恒星的排列和形状很感兴趣,并很自然地把一些位置相近的星联系起来,组成星座.占星术亦称"占星学"."星占学 ...

  7. hibernate.cfg.xml_属性"connection.url"_指定字符集

    1.Oracle 2.MySQL 3. 4. 5.

  8. MySQL字符集

    字符集的选择 1.如果数据库只需要支持中文,数据量很大,性能要求也很高,应该选择双字节定长编码的中文字符集(如GBK).因为相对于UTF-8而言,GBK"较小",每个汉字只占2个字 ...

  9. ORACLE字符集基础知识

    概念描叙    ORACLE数据库有国家字符集(national character set)与数据库字符集(database character set)之分.两者都是在创建数据库时需要设置的.国家 ...

  10. mysql配置命令 CHARACTER_SET_%字符集设置

    参照: http://blog.csdn.net/mzlqh/article/details/7621307点击打开链接 其实现在的ubuntu12. 直接sudo apt-get install M ...

随机推荐

  1. kubernetes之Secret和Configmap

    创建和查询Secret literal 播报 编辑 讨论 上传视频literal是一个英语单词,形容词,意思是文字的:逐字的:无夸张的. [1] 通过--from-literal创建以及查看 [mac ...

  2. EDP .Net开发框架--业务模型

    平台下载地址:https://gitee.com/alwaysinsist/edp 业务模型概述 业务模型管理中所涉及的业务模型,业务模型的属性,业务模型的视图都是可以通过权限设置来实现数据的行(视图 ...

  3. linux ls命令的重要用法:按照文件大小排序和按照时间排序

    1.ls命令是list的缩写,用来打印当前目录清单或者打印出指定目录下的文件及文件清单. 2.本文介绍ls的重要用法:按"文件大小"排序列出文件清单和按"时间" ...

  4. IDS4 傻瓜式实践指南

    前言: 这是一篇实践指南,不会过多的解释原理(因为我也说不清楚,想了解的同学请移步老张的博客,里面有非常详细的介绍),本篇文章讲解如何简单的使用IDS4来实现单点登录,以及遇到的一些坑实现功能: 1. ...

  5. c++ RTTI Runtime Type Identification 运行阶段类型识别

    NoVirtualBase* NvirBase = new NovirtualDerivd(); NvirBase->print(); // auto nd1 = dynamic_cast< ...

  6. 重做贪吃蛇 万向移动型 蛇的移动和吃食部分C# wpf版

    之前写了一个贪吃蛇,代码实在太乱了,上一个是用polyline做的,这次这个是用一个个的elipse来渲染蛇的身体,其中一个圆点,就是一个elipse了.蛇的移动是通过定时器来实现的,方向键 A D控 ...

  7. 动态类型语言 VS 静态类型语言

    一. 运行期动态修改类型结构 动态编程语言是高级编程语言的一个类别,在计算机科学领域已被广泛应用.它是一类在运行时可以改变其结构的语言:例如新的函数.对象.甚至代码可以被引进,已有的函数可以被删除或是 ...

  8. vim快捷键之复制粘贴

    yy: 复制光标所在行 p: 将复制的内容粘贴到光标所在行的下一行 P: 将复制的内容粘贴到光标所在行的上一行

  9. H264 H265 分析小工具

    1.在调试 H264 H265 编码的流数据的时候,有时候需要打印没有nalu的类型和数量,自己写了一个小工具 使用方式: p.p1 { margin: 0; font: 22px Menlo; co ...

  10. Vue插槽与作用域插槽

    title: Vue插槽与作用域插槽 date: 2024/6/1 下午9:07:52 updated: 2024/6/1 下午9:07:52 categories: 前端开发 tags: VueSl ...