新闻详细
新闻当前位置:新闻详细

编码和解码

Unicode为世界上所有字符都分配了一个唯一的数字编号,这个编号范围从 0x000000 到 0x10FFFF(十六进制),有110多万,每个字符都有一个唯一的Unicode编号,这个编号一般写成16进制,在前面加上U+。例如:“马”的Unicode是U+9A6C。
Unicode码只是一种映射关系,等同于一种概念抽象,实际的存储以unicode码为基础,有多种实现,每种实现的存储形式各不相同;故gbk格式存储的文档不可以直接转换为utf-8格式
Unicode就相当于一张表,建立了字符与编号之间的联系
unicode使用两个字节表示字符的一种映射关系,只规定了每个字符的数字编号是多少,并没有规定这个编号如何存储。
编号到二进制有多种方案:主要有UTF-8,UTF-16,UTF-32,gbk等
utf-8:
UTF-8就是使用变长字节表示,顾名思义,就是使用的字节数可变,这个变化是根据Unicode编号的大小有关,编号小的使用的字节就少,编号大的使用的字节就多。使用的字节个数从1到4个不等。
英文一个字节,中文三个字节,存在部分字符使用四个
UTF-16使用变长字节表示
对于编号在U+0000到U+FFFF的字符(常用字符集),直接用两个字节表示。
编号在 U+10000到U+10FFFF之间的字符,需要用四个字节表示
UTF-32
用四个字节表示,处理单元为四个字节(一次拿到四个字节进行处理)
gbk 使用2个字节
ASCII码介绍
ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。
到目前为止共定义了128个字符
用于将字符转换未二进制码
ASCII 码使用指定的 7 位或 8 位二进制数组合来表示 128 或 256 种可能的字符。
————————————————
版权声明:本文为CSDN博主「凉兮~」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_39061115/article/details/103800303
Copyright2023蜂蚂科技