Unicode编码介绍

news/2024/9/22 22:31:27/文章来源:https://www.cnblogs.com/sailJs/p/18389071

什么是Unicode编码?

Unicode是字符编码规范,它定义了所有文字的编码规则。说通俗点就是它按照某个规则给每个字符都分配了一个数字编号(比如:'A'的编号为65或0x0041,'万'的编号为19981或0x4e0d),相当于是一个编号库。这个数字编号也叫Unicode码。最开始这个编号使用2个字节表示(0x0000~0xFFFF),后来发现不够又扩展到4个字节(扩展出的部分:0x10000~0x10FFFF)。

 

和utf-8编码的区别是啥?

Unicode只是一个标准,通过它我们可以获取到字符的编号(Unicode码),而这个编号如何存储,它并没有定义。而这个正是utf-8编码做的事,它是建立在Unicode编码基础上,定义了Unicode码的存储规范。

比如:'A'的编号为65或0x0041,utf-8会保存为1个字节:0x41,这样就可以节省一半的存储空间。

 

一些常见的Unicode编码范围

0000-007F:C0控制符及基本拉丁文 (C0 Control and Basic Latin)

0080-00FF:C1控制符及拉丁文补充-1 (C1 Control and Latin 1 Supplement)

0100-017F:拉丁文扩展-A (Latin Extended-A)

0180-024F:拉丁文扩展-B (Latin Extended-B)

0250-02AF:国际音标扩展 (IPA Extensions)

02B0-02FF:空白修饰字母 (Spacing Modifiers)

0370-03FF:希腊文及科普特文 (Greek and Coptic)

0400-04FF:西里尔字母 (Cyrillic)

1E00-1EFF:拉丁文扩充附加 (Latin Extended Additional)

2000-206F:常用标点 (General Punctuation)

2070-209F:上标及下标 (Superscripts and Subscripts)

20A0-20CF:货币符号 (Currency Symbols)

20D0-20FF:组合用记号 (Combining Diacritics Marks for Symbols)

2100-214F:字母式符号 (Letterlike Symbols)

2150-218F:数字形式 (Number Form)

2190-21FF:箭头 (Arrows)

2200-22FF:数学运算符 (Mathematical Operator)

2300-23FF:杂项工业符号 (Miscellaneous Technical)

2460-24FF:封闭式字母数字 (Enclosed Alphanumerics)

2500-257F:制表符 (Box Drawing)

2580-259F:方块元素 (Block Element)

25A0-25FF:几何图形 (Geometric Shapes)

2600-26FF:杂项符号 (Miscellaneous Symbols)

2E80-2EFF:CJK 部首补充 (CJK Radicals Supplement)

2F00-2FDF:康熙字典部首 (Kangxi Radicals)

2FF0-2FFF:表意文字描述符 (Ideographic Description Characters)

3000-303F:CJK 符号和标点 (CJK Symbols and Punctuation)

3040-309F:日文平假名 (Hiragana)

30A0-30FF:日文片假名 (Katakana)

3100-312F:注音字母 (Bopomofo)

3190-319F:象形字注释标志 (Kanbun)

31A0-31BF:注音字母扩展 (Bopomofo Extended)

31C0-31EF:CJK 笔画 (CJK Strokes)

31F0-31FF:日文片假名语音扩展 (Katakana Phonetic Extensions)

3200-32FF:封闭式 CJK 文字和月份 (Enclosed CJK Letters and Months)

3300-33FF:CJK 兼容 (CJK Compatibility)

3400-4DBF:CJK 统一表意符号扩展 A (CJK Unified Ideographs Extension A)

4E00-9FFF:CJK 统一表意符号 (CJK Unified Ideographs)

F900-FAFF:CJK 兼容象形文字 (CJK Compatibility Ideographs)

FE10-FE1F:竖排形式 (Vertical Forms)

FE30-FE4F:CJK 兼容形式 (CJK Compatibility Forms)

 

D800-DBFF:给UTF-16用的代理高半区(High-half zone of UTF-16)

DC00-DFFF:给UTF-16用的代理低半区(Low-half zone of UTF-16)

E000-F8FF:自行使用区域 (Private Use Zone)

FFF0-FFFF:特殊 (Specials)

 

上面的红色部分为在中国用的比较多的字符,蓝色部分是日文的字符

 

专业名词解释:

Ideographs:表意文字,也叫象形文字 

CJK:中日韩

 

要查看各个Unicode编码范围的字符信息,可以使用BMFont,BMFont - AngelCode.com

 

参考

utf8,utf16,utf32,bom详解(转) - 宏2018 - 博客园 (cnblogs.com)

Unicode 字符集、编码 相关的基本介绍-CSDN博客

各种语系的unicode对应以及local编码方式 - YoZane - 博客园 (cnblogs.com)

Unicode 中文,日文,西欧语言Unicode编码域(区间)_日文unicode范围-CSDN博客

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/792363.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode题集-2 - 两数相加

递归法和迭代法有什么差别,通过两数相加算法来搞明白,一举多得这个题目是什么意思呢?简单来说就是把两个链表平铺开,头节点对齐,然后从头开始相同的节点相加,满10则进位,进位值与下个节点继续相加,当一个链表没有节点时候则可以把没有节点当做0继续与有节点的链表继续相…

pytesseract实现识别pdf文件并将内容写入word文档中

步骤一:先安装tesseract-ocr-w64-setup-5.4.0.20240606 (安装记得语言包只安装需要的即可) 步骤二:将安装目录添加到系统环境变量中 (网上很多这一步之后就说可以运行程序了其实不然,一直报错没有添加到环境变量中) 步骤三:第四步:可以正常运行啦 =================…

消息中间件ms

消息中间件rabbitmq如何保证数据不丢失 MQ高级搜消息可靠性 常用于mq重复消费问题解决 搜消费者重复消息问题延迟队列有了解过吗?(私信交换机) 搜延迟消息如果有100w的消息堆积到mq怎么办(消息堆积)高可用机制了解过吗

9种最高频的架构模式

这9种最高频的架构模式了解一下,什么样的业务适合事件驱动,什么样的业务适合ETL,什么类型的服务依赖streaming,分别有什么样的特征最好事前准备,我的专栏会分析每种架构的方法论和面试注意事项,感兴趣的可以关注

gadget驱动框架(一)

之前在linux移植udc驱动的时候,没有深入的理解整个gadget驱动框架,现在重新再屡屡gadget驱动,以便后期再次学习。本系列的文章以虚拟串口进行分析,相关源码均是基于linux4.19.123。 gadget驱动框架 gadget源码主要在:drivers/usb/gadget,以虚拟串口为例,对源文件做简单说…

Transfusion: Predict the Next Token and Diffuse Images with One Multi-Modal Model(2024,8)

Transfusion: Predict the Next Token and Diffuse Images with One Multi-Modal Model(2024,8) Paper TODO: 目前没有开源代码,实时关注一下official code,Meta的工作基本开源的.本文给出了一种新的T2I的方法. lucidrains的代码本质是将LLM的transformer和图像中的diffusion结…

代码整洁之道--读书笔记(1)

代码整洁之道简介: 本书是编程大师“Bob 大叔”40余年编程生涯的心得体会的总结,讲解要成为真正专业的程序员需要具备什么样的态度,需要遵循什么样的原则,需要采取什么样的行动。作者以自己以及身边的同事走过的弯路、犯过的错误为例,意在为后来者引路,助其职业生涯迈上更…

Towards Robust Blind Face Restoration with Codebook Lookup Transformer(NeurIPS 2022) | Codeformer

Towards Robust Blind Face Restoration with Codebook Lookup Transformer(NeurIPS 2022) 这篇论文试图解决的是盲目面部恢复(blind face restoration)问题,这是一个高度不确定的任务,通常需要辅助指导来改善从低质量(LQ)输入到高质量(HQ)输出的映射,或者补充输入中丢…

[MySQL]B+树能存储多少数据

MySQL中一个B+树能存储多少数据MySQL中InnoDB页的大小默认是16k。也可以自己进行设置。(计算机在存储数据的时候,最小存储单元是扇区,一个扇区的大小是 512 字节,而文件系统(例如 XFS/EXT4)最小单元是块,一个块的大小是 4KB。 InnoDB 引擎存储数据的时候,是以页为单位的…

基于 GoFrame 框架的 Go 项目打包成镜像,并上传至 Harbor 镜像库

本文通过将一个简单的 gf 项目推送到 harbor,简单介绍了整个流程和过程中用到的命令。〇、前言 在云服务时代最流行的部署方式就是容器部署,这也是最推荐的部署方式。 对于 GoFrame 框架就不多介绍了,直接来初始化一个 demo,备用。 // 初始化一个项目:gf-demo gf init gf-…

ChatOn安卓版(智能AI聊天机器人) v1.48.435-476 高级版

概述 ChatOn 构建于ChatGPT和GPT-4o之上,为用户提供市场上最优秀的中文AI聊天机器人。AI聊天机器人能够达到一个全新水平的仿人类互动:当你为某一场正式会议准备演讲,苦思动人的措辞,或寻求写作方面的帮助时,这款智能机器人和AI助手都会统统帮你搞定。 软件功能 1、AI 写…

JPEG格式研究——(2)JPEG文件格式

JPEG文件除了图像数据之外,还保存了与图片相关的各种信息,这些信息通过不同类型的TAG存储在文件中。 TAG JPEG通过TAG标记压缩书记之外的信息。所有的TAG都包含一个TAG类型,TAG类型大小为两个字节,位于一个TAG的最前面。TAG类型的第一个字节一定为0xFF 以下是部分常见的TAG…