首页 > 其他分享 >unicode编码

unicode编码

时间:2023-07-29 15:44:20浏览次数:52  
标签:编码 UCS 字节 字符 码位 unicode

1、unicode编码
unicode统一码,万国码,单一码,是计算机科学领域的一项业界标准。是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。

官网:https://home.unicode.org/

1.1 版本
unicode发布了多个版本,持续更新中。
unicode 1.0 1991年10月
...
unicode 15.0 2022年9月13日

1.2 编码方式

unicode包含世界上绝大多数的文字和符号,但是并不是全部,少数新生字以及少数人使用的语言并未收容。

统一码字符集UCS(character set),分为UCS-2和UCS-4,即分别用2个字节和4个字节表达。

UCS-2,占用两个字节,表达范围0-65535,可以容纳65536个字符。在java和其他编程中,一般使用的都是UCS-2。

UCS-4,占用四个字节,用数字0-0x10FFFF来映射这些字符,最多可以容纳1114112个字符,或者说有1114112个码位。

1.3 实现方式

指的是将字符所对应的码位表达为二进制数据。

当然,直接将字符的码位表达是可以的,比如“字”对应23383,直接记录该数字或者其二进制、十进制文本形式等。java的char类型,以及网络通信有时会这样使用。

而常见的,是通过UTF-8、UTF-16和UTF-32将unicode码位转为相应的二进制数据。区别在于表达的字节长度和填充方式。

2、utf-8
是针对Unicode的一种可变长度字符编码。它可以用来表示Unicode标准中的任何字符,而且其编码中的第一个字节仍与ASCII相容,使得原来处理ASCII字符的软件无须或只进行少部分修改后,便可继续使用。(这里的ascii码指的是ascii基础码,并不兼容ascii扩展码)

(1)utf-8使用1-4个字节为每个unicode字符编码,但一般说的是ucs-2所表达的字符

(2)utf-8兼容ascii基础码,0x00-0x7f。但是并不兼容ascii扩展码

(3)带有变音符号的拉丁文、希腊文、西里尔字母、亚美尼亚语、希伯来文、阿拉伯文、叙利亚文等字母则需要2字节编码(Unicode范围由U+0080~U+07FF)。

(4)其他语言的字符(包括中日韩文字、东南亚文字、中东文字等)包含了大部分常用字,使用3字节编码。

(5)其他极少使用的语言字符使用4字节编码。

(6)具体的编码方式

首字节会以0、10、110和1110的形式开头,表示该字符是1-4个字节表示。

其余字节的头两个位元都是以 "10" 开始,使文字处理器能够较快地找出每个字符的开始位置。

排除作为定位的比特后的有效位,连接起来表示的二进制数即unicode字符的码位。

标签:编码,UCS,字节,字符,码位,unicode
From: https://www.cnblogs.com/wd404/p/17312015.html

相关文章

  • ascii编码
    1、介绍ASCII(AmericanStandardCodeforInformationInterchange):美国信息交换标准代码是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC646。ASCII第一次以规范标准的类型发表是在1967年,最后一次更......
  • 高效的视频渲染——H264与H265编码
    需要先安装Quicktime现在的主流还是H264但在不久后的将来H265会发展起来的两种常用的渲染方式这种方式,渲染的时候AE是不能工作的所以一般用第二种方式:添加到ME里面......
  • 【Azure Cloud Service】云服务升级后,查看配置文件发现编码变为utf-16
    问题描述通过MigratetoARM,把经典云服务升级成云服务(外延支持)后,在查看云服务的配置XML文件,发现文件的编码格式由UTF-8改变为UTF-16 由此,引发了三个问题1)CloudService是否支持UTF-8,UTF-16这两种编码呢?2)为什么CloudService的配置文件会发生改变?3)配置文件发生改......
  • 【Azure Cloud Service】云服务升级后,查看配置文件发现编码变为utf-16
    问题描述通过MigratetoARM,把经典云服务升级成云服务(外延支持)后,在查看云服务的配置XML文件,发现文件的编码格式由UTF-8改变为UTF-16 由此,引发了三个问题1)CloudService是否支持UTF-8,UTF-16这两种编码呢?2)为什么CloudService的配置文件会发生改变?3)配置文件发生改变后,是否......
  • java中常见的中文编码格式
    几种常见的编码格式为什么要编码首先要了解为什么要编码?我们能不能不编码?要回答这个问题必须要回到计算机是如何表示我们人类能够理解的符号的,这些符号也就是我们人类使用的语言。由于人类的语言有太多,因而表示这些语言的符号太多,无法用计算机中一个基本的存储单元——byte来......
  • Python编码错误:no encoding declared
    问题描述Python文件中如果未指定编码,在执行过程会出现报错:....,butnoencodingdeclared....问题原因Python中默认的编码格式是ASCII格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。Python3.X源码文件默认使用utf-8编码,所以可以正常解析中文,无需指定......
  • 物料编码、BOM、ERP基础培训
    以前整理的一个PPT分享给大家,可以作为基础资料了解了解,希望对刚入门的朋友有所帮助.        ......
  • 直播平台源码开发提高直播质量的关键:视频编码和解码技术
         在互联网日益发展的今天,直播平台成为人们互联网生活的主力军,直播平台功能的多样化与智能化使我们的生活有了极大地改变,比如短视频功能,它让我们既可以随时随地去发布自己所拍摄到的东西让世界各地的用户看到,也能让我们能看到世界各地所发生的事情;再就是最重要的直播......
  • Vulkan Video实现GPU加速视频编码/解码
    正文字数:929 阅读时长:2分钟Vulkan是一套跨平台的图形API,由Khronos组织牵头进行制定,普遍被看作是OpenGL的后继者,目前版本已经来到1.2.175,仍然在不停地进行更新,其在非Windows平台上面已经逐渐变成了首选使用的图形API。在未来,Vulkan甚至会提供模拟DirectX等其他图形API的功能,有很大......
  • windows安装xadmin==0.6.1报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0
    直接用pip安装xadmin会报以下错误:pipinstallxadmin==0.6.1报错:Completeoutputfromcommandpythonsetup.pyegg_info:Traceback(mostrecentcalllast):File"<string>",line1,in<module>File"C:\Users\Administror\......