带你读《全景揭秘字符编码》之六:六、字符编码模型(5)

简介: 带你读《全景揭秘字符编码》之六:六、字符编码模型(5)

带你读《全景揭秘字符编码》之六:六、字符编码模型(4) https://developer.aliyun.com/article/1240930?groupCode=tech_library


6.5、第三层:字符编码方式 CEF


抽象字符集和编号字符集是站在方便我们理解的角度来看的,所以最后我们需要翻译成计算机能懂的语言,将十进制的编号转换成二进制的形式。


因此:字符编码方式就是将字符集的码点编号,转换成二进制码元序列( Code Unit Sequence )的过程。


码元:字符编码的最小处理单元,比如ASCII一个字符等于一个字节,属于单字节码元;UTF-16一个字符等于两个字节,处理过程是按字“word”来处理,所以是双字节码元;UTF-8是多字节编码,有单字节字符,也有多字节字符,每次处理是按单个单个字节解析处理,所以处理最小单位是字节,也属于单字节码元。


这里大家可能会有疑问:十进制直接转二进制不就好了吗,为什么要单独抽出这么一层?


早期的字符编码确实也是这么处理的,十进制和二进制之间是直接转换过去的,比如ASCII码,字符“A”的十进制是“65”,那对应的二进制就是“1000001”,同时存储到硬盘里的也是这个二进制,所以那时候的编码比较简单。


随着后来多字节字符编码(Muilti-Bytes Character Set,MBCS多字节字符集)的出现,字符编号和二进制之间不是直接转换过去的,比如GB2312编码,“万”字的区位编号是“45,82”,对应的二进制机内码却是“1100 1101 1111 0010”(其十进制是“205,242”)。


如果这里不转换直接映射成二进制码会出什么问题呢?“万”字的字符编号“45,82”,45在ASCII里是“-”,82是“U”,那到底是显示两个字符“-U”还是显示一个字符“万”字,为了避免这种冲突 所以增加了前缀处理,详细的过程会在下文具体来讲解。


带你读《全景揭秘字符编码》之六:六、字符编码模型(6) https://developer.aliyun.com/article/1240928?groupCode=tech_library

相关文章
|
JSON 小程序 数据安全/隐私保护
小程序动态调试-解密加密数据与签名校验
本文主要讲解微信小程序加密、验签的情况下如何进行动态调试已获取签名以及加密信息
|
7月前
|
人工智能 数据可视化 安全
阿里云建站:AI万小智,万小智AI建站送.cn域名
万小智是阿里云推出的AI数字员工,面向企业及个人提供AI驱动的自助建站服务。支持对话建站、AI生成配图与内容,预置千套模板,多端适配,可视化拖拽操作,集成云服务器、数据库、CDN等云服务,保障安全高效。活动期间,购建站产品送.CN域名首年免费,新客首年仅99元起,助力用户低成本快速搭建专业官网并实现智能运营。
|
3月前
|
人工智能 自然语言处理 开发工具
AI解说大师narrator-ai-cli:影视解说自动化工具,CLI架构让内容生产效率翻倍
narrator-ai-cli 是一款专为影视解说打造的开源CLI工具,支持字幕提取、风格化文案生成、配音合成与视频剪辑全流程自动化。本地优先、无需GPU,原片不上传;独有CLI架构可脚本调用、无缝接入QClaw等AI Agent,助力批量生产与工作流集成。(239字)
|
3月前
|
存储 人工智能 运维
AI协同天花板!开源知识库搭配智能解析,文档无缝适配AI调用
在数字化转型持续深化的当下,企业知识呈现多源、异构、海量特征,传统知识库常陷入 “建而不用、存而不通” 的困境。作为 AI 驱动的开源知识库系统,以大模型能力为核心,打通文档管理、智能创作、问答检索与第三方集成全链路,搭配百智云智能文档解析能力,为组织提供轻量化、高可用、可扩展的知识管理解决方案,助力知识从 “静态存储” 转向 “动态赋能”。
|
2月前
|
弹性计算 人工智能 运维
阿里云轻量应用服务器抢购活动解析:2核2G38元1年,2核4G9.9元1个月、199元1年
阿里云2026年轻量应用服务器抢购活动,专为个人开发者、学生及初创企业设计,提供2核2G(38元/年)和2核4G(9.9元/月、199元/年)两款高性价比配置,均配备ESSD云盘与200M峰值带宽。活动规则严格,限新用户参与,每日固定时段限量抢购。服务器提供丰富镜像选择,支持快速应用部署。若抢购未果,用户可选择新用户专享价或转向云服务器长效特惠方案,满足不同上云需求。
|
9月前
|
安全 Oracle 关系型数据库
真实世界资产代币化的应用场景与成效
RWA代币化是将现实资产权益转化为链上可交易数字代币,核心包括资产确权、分割权益、链上托管与合规对接。涵盖地产、艺术品等领域,提升流动性与透明度,需法律、技术与监管协同落地。
|
前端开发
如何在Rollup中配置Tree Shaking?
如何在Rollup中配置Tree Shaking?
370 55
|
Apache 数据安全/隐私保护
HAProxy的高级配置选项-ACL篇之基于策略的访问控制
这篇文章介绍了HAProxy的高级配置选项,特别是如何使用ACL(访问控制列表)进行基于策略的访问控制,通过实战案例展示了如何配置HAProxy以允许或拒绝来自特定源地址的访问。
453 7
HAProxy的高级配置选项-ACL篇之基于策略的访问控制
|
区块链 Python
9-18|图片上生成字体设置字体大小
9-18|图片上生成字体设置字体大小
|
Kubernetes API 容器
如何从k8s集群外的机器上调用k8s的API(可调用多个k8s的apiserver)
从k8s集群外的机器上调用k8s主节点的apiserver提供的API
4605 1