Unicode编码的实现

一 点睛

Unicode的实现和编码方式不一定等价。Unicode编码是一种理论层面的东西。Unicode编码的实现方式称为Unicode转换格式(Unicode Transfomation Format,UTF)。Unicode编码的实现方式主要由UTF-8,UTF-16,UFT-32等,分别以字节(BYTE)、字(OWORD,2个字节)、双子(DWORD,4个字节,实际只用了31位,最高位为0)作为编码单位。根据字节序的不同,UTF-16可以被实现为UTF-16LE或UFT-16BE,UTF-32可以被实现为UTF-32LE或UFT-32BE。这些方式是对Unicode码点进行编码,以适合计算机的存储和传输。

二 UTF-8

1 从Unicode到UTF-8的编码方式

2 转换方法

首先找到该Unicode编号所在的编号范围,进而可以找到与之对应的二进制格式,然后将该Unicode编号转化为二进制数(去掉高位的0),最后将该二进制数从右向左依次填入二进制格式的X中,如果还有X未填,则设为0 。

3 举例

“马”的Unicode编号是:0x9A6C,整数编号是39532,对应第三个范围(2048 - 65535),其格式为:1110XXXX 10XXXXXX 10XXXXXX,39532 对应的二进制是 1001 1010 0110 1100,将二进制填入进入就为: 11101001 10101001 10101100 。

4 图示

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值