计算机编码发展史,计算机字符编码的发展史

本文探讨了计算机字符编码的发展历程,从简单的ASCII码到现代的Unicode编码模型。现代编码模型包括字符表、编码字符集、字符编码表和字符编码方案等概念,重点解析了UTF-8和UTF-16在字符映射到比特值的过程。文章指出,理解这些编码模型对于解决字符集兼容性和多语言支持问题至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

计算机字符编码发展史及其应用范围

原文链接:http://doc.xuehai.net/39309/

1-62-jpg_6_0_______-630-0-0-630.jpg

2013/05/07 | 分类: 程序员 | 6 条评论 | 标签: ASCII, UNICODE, 编码

分享到:41

伯乐在线注:本文来自文章作者@acmerfight 的投稿(原文链接)。如果其他朋友也想投稿,请发邮件至 webmaster@http://doc.xuehai.net,或直接给@伯乐在线官方微博 私信投递。

———————————————————-

你是否认为“ASCII码 = 一个字符就是8比特”?你是否认为一个字节就是一个字符,一个字符就是8比特?你是否还认为你是否还认为UTF-8就是用8比特表示一个字符?如果真的是这样认为认真读完这篇文章吧!

为什么要有编码?

首先大家需要明确的是在计算机里所有的数据都是字节的形式存储,处理的。我们需要这些字节来表示计算机里的信息。但是这些字节本身又是没有任何意义的,所以我们需要对这些字节赋予实际的意义。所以才会制定各种编码标准。

编码模型

首先需要明确的是存在两种编码模型

简单字符集

在这种编码模型里,一个字符集定义了这个字符集里包含什么字符,同时把每个字符如何对应成计算机里的比特也进行了定义。例如ASCII,在ASCII里直接定义了A -> 0100 0001。 现代编码模型

在现代编码模型里要知道一个字符如何映射成计算机里比特,需要经过如下几个步骤。 1.

2. 知道一个系统需要支持哪些字符,这些字符的集合被称为字符表(Character repertoire) 给字符表里的抽象字符编上一个数字,也就是字符集合到一个整数集合的映射。这种映

射称为编码字符集(CCS:Coded Character Set),unicode是属于这一层的概念,跟计算机里的什么进制啊没有任何关系,它是完全数学的抽象的。

3. 将CCS里字符对应的整数转换成有限长度的比特值,便于以后计算机使用一定长度的

二进制形式表示该整数。这个对应关系被称为字符编码表(CEF:Character Encoding Form)UTF-8, UTF-16都属于这层。

4. 对于CEF得到的比特值具体如何在计算机中进行存储,传输。因为存在大端小端的问

题,这就会跟具体的操作系统相关了。这种解决方案称为字符编码方案(CES:Character Encoding Scheme)。

平常我们所说的编码都在第三步的时候完成了,都没有涉及到CES。所以CES并不在本文的讨论范围之内。

现在也许有人会想为什么要有现代的编码模型?为什么在现在的编码模型要拆分出这么多概

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值