今天给各位分享字符编码挑战:深入探讨Unicode与UTF标准的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
例如,汉字“金”的Unicode是十六进制数91D5,转换成15位二进制数(1001 0001 1101 0001)。也就是说,这个符号的表示至少需要2个字节。表示其他较大的符号可能需要3 个字节或4 个字节,甚至更多。这里就有两个严重的问题:第一个问题是:如何区分Unicode和ASCII?计算机如何知道三个字节代表一个符号,而不是三个单独的符号?例如,“金”这个词的二进制是1001 0001 1101 0001。我们怎么知道它不是两个ASCII字符,即10010001和11010001呢?但是1001000111010001作为一个整体代表一个字符?所以就有这个问题, unicode 虽然定义了每个字符的唯一二进制编码, 但是那里是分隔符我们不确定, 我们不知道到底哪里是代表一个字符,还是两个字符,或者三个字符。所以必须有一些规则来定义这个分割符第二个问题,第一个问题之后,我们自然会认为没有办法区分如何划分字符,所以就用三个字节来表示每个字符。每三个字节就是一个字符,一刀切,才是最合适的。 但我们已经知道,只用一个字节就足以表示英文字母。如果Unicode统一规定每个符号用三四个字节表示,那么每个英文字母前面就必须有两到三个字节。是0,这对存储来说是巨大的浪费。文本文件的大小会大两三倍,这是不可接受的。UTF-8
互联网的普及强烈要求统一编码方式的出现。 UTF-8 是Internet 上使用最广泛的Unicode 实现。同样,这里的关系是UTF-8 是 Unicode 的实现方式之一。 UTF-8最大的特点之一是它是一种可变长度的编码方法。它可以用1~4个字节来表示一个符号,字节长度根据不同的符号而不同。 UTF-8的编码规则很简单,只有两条: 1)对于单字节符号,该字节的第一位设置为0,接下来的7位是该符号的Unicode码。所以对于英文字母来说,UTF-8编码和ASCII编码是一样的。 2)对于n字节符号(n 1),第一个字节的前n位设置为1,第n+1位设置为0,后面字节的前两位设置为10。其余未提及的二进制位均为该符号的Unicode 代码。 下表总结了编码规则,其中字母x 表示可用的编码位。 Unicode 符号范围| UTF-8编码方式 (十六进制)| (二进制) -----------------------+------------------------ - ------------------ 0000 0000-0000 007F | 0xxxxxxx
0000 0080-0000 07FF | 110
【字符编码挑战:深入探讨Unicode与UTF标准】相关文章:
2.米颠拜石
3.王羲之临池学书
8.郑板桥轶事十则
用户评论
看到这标题,突然想起以前搞代码的时候遇到过字符乱码的问题...
有12位网友表示赞同!
Unicode和UTF这些专业术语听起来很复杂啊,感觉我需要再学习一下计算机基础知识。
有16位网友表示赞同!
编码问题真让人头疼!每次写中文文件都会担心出现奇怪的符号。
有8位网友表示赞同!
不知道我的电脑现在用的是什么编码形式,希望是支持Unicode和UTF的版本。
有11位网友表示赞同!
感觉这篇文章应该能解决我长期困扰的字符编码问题,期待早点读完!
有17位网友表示赞同!
做网站的时候总是要考虑字符编码的问题,要不然就容易出现乱码现象。
有10位网友表示赞同!
这标题确实很到位,直击编码问题的核心内容。
有16位网友表示赞同!
最近在学习编程语言,发现字符编码也是一门很重要的知识点啊!
有7位网友表示赞同!
希望这篇文章能讲解详细一些,比如不同编码的优缺点以及选择使用哪个编码更为合适的情况。
有15位网友表示赞同!
以前没做过深入研究的了解过Unicode和UTF,这次借着这篇文章好好看看吧!
有5位网友表示赞同!
字符编码问题虽然说起来有点抽象,但是对我们日常生活的影响可是很大呢!
有19位网友表示赞同!
想问问文章里会提到一些常见编码格式的例子吗?
有20位网友表示赞同!
希望能结合实际案例说明一下Unicode和UTF在不同平台下应用的区别。
有9位网友表示赞同!
学习计算机知识,总是觉得字符编码这块很难懂,希望这篇文章能给我带来启发!
有8位网友表示赞同!
以前只知道字符编码的概念,现在想更深入的了解它的运作机制。
有14位网友表示赞同!
看完这篇之后,我希望自己能够对字符编码问题更加清晰的认知!
有13位网友表示赞同!
在网络安全的方面,字符编码也扮演着重要的角色吧?
有14位网友表示赞同!
这篇文章内容应该非常实用,能帮助我们在实际工作中更好地应对字符编码问题!
有7位网友表示赞同!