首页 > 其他 > 详细

计算机字符编码

时间:2021-03-27 12:23:54      阅读:31      评论:0      收藏:0      [点我收藏+]

UCS-2:

Unicode编码,分为大端、小端 。

BOM:

所谓BOM头(Byte Order Mark)就是文本文件中开始的几个并不表示任何字符的字节。
UTF8的BOM头为0xEF 0xBB 0xBF
Unicode大端模式为 0xFE 0xFF
Unicode小端模式为 0xFF 0xFE 

ASCII码:

美国国家标准协会ANSI制定的一个标准,规定了常用字符的集合以及每个字符对应的编号,这就是ASCII字符集(Character Set),也称ASCII码。  

其中:
0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符),如控制符:LF(换行)、CR(回车)、 FF(换页)、DEL(删除)、BS(退格)

32~126(共95个)是字符(32 是空格),其中 48~57 为0到9十个阿拉伯数字。

65~90为26个大写英文字母,97~122 号为 26 个小写英文字母,其余为一些标点符号、运算符号等。

后128个称为扩展ASCII码。许多基于x86的系统都支持使用扩展(或“高”)ASCII。扩展ASCII码允许将每个字符的第 8位用于确定附加的128个特殊符号字符、外来语字母和图形符号。

全角:

全角是一种电脑字符,每个全角字符占用两个标准字符(或半角字符)位置。通常的英文字母、数字键、符号键都是半角的,半角的显示内码都是一个字节。
为了排列整齐,英文和其它拉丁文的字符和标点也提供了全角格式。

Unicode

Unicode字符集涵盖了目前人类使用的所有字符,并为每个字符进行统一编号,分配唯一的字符码(Code Point)。
Unicode字符集将所有字符按照使用上的频繁度划分为17个层面(Plane),每个层面上有 216=65536 个字符码空间。
其中第0个层面BMP,基本涵盖了当今世界用到的所有字符。其他的层面要么是用来表示一些远古时期的文字,要么是留作扩展。
我们平常用到的Unicode字符,一般都是位于BMP层面上的。目前Unicode字符集中尚有大量字符空间未使用。

在Unicode出现之前,所有的字符集都是和具体编码方案绑定在一起的(即字符集≈编码方式),都是直接将字符和最终字节流绑定死了,
从unicode到uft-8并不是直接的对应,而是要过一些算法和规则来转换 。

UTF-8就是每次8个位传输数据,而UTF-16就是每次16个位。UTF-8最大的一个特点,就是它是一种变长的编码方式。
它可以使用 1~4个字节表示一个符号。Unicode只是定义了一个庞大的、全球通用的字符集,并为每个字符规定了唯一确定的编号,具体存储成什么样的字节流,取决于字符编码方案。
Unicode编码,则是对UTF-8、UCS-2/UTF-16等具体编码方案的统称而已,并不是具体的编码方案。   

术语:
OEM字符集  
多字节字符集(MBCS):(Muilti-Bytes Charecter Set)  
ANSI 标准、国家标准、 ISO 标准  
UTF(UCS Transfer Format)标准  

UTF-8的编码规则:

对于单字节的UTF-8编码,该字节的最高位为0,其余7位用来对字符进行编码(等同于ASCII码)。
对于多字节的UTF-8编码,如果编码包含 n个字节,那么第一个字节的前n位为1,第一个字节的第n+1位为0,该字节的剩余各位用来对字符进行编码。
在第一个字节之后的所有的字节,都是最高两位为"10",其余6位用来对字符进行编码。   

计算机字符编码

原文:https://www.cnblogs.com/088-p/p/14585084.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!