编码知识学习笔记之一

简介:   编码知识学习笔记之一 一.有哪些编码 1. ANSI 2.Unicode 3.Unicode big Endian 4.Unicode - ASCII Escaped   5.
 

编码知识学习笔记之一

一.有哪些编码

1. ANSI

2.Unicode

3.Unicode big Endian

4.Unicode - ASCII Escaped

 

5.UTF-7

6.UTF-8

7.UTF-16

 

8.UTF-8 - 无 BOM

9.UTF-16 - 无 BOM

 

10.UTF-16 - Big Endian

11.UTF-16 - Big Endian - 无 BOM

12.GBK

二.Unicode是什么的缩写

Universal Multiple-Octet Coded Character Set

三.Unicode是什么

Unicode 是一种字符编码方法,它是由国际组织设计,可以容纳全世界所有语言文字的编码方案。Unicode的全称是"Universal Multiple-Octet Coded Character Set",简称为UCS。UCS可以看作是"Unicode Character Set"的缩写。

四.Unicode的历史

目前存在两个试图独立设计Unicode的组织:

1.  国际标准化组织(ISO)

2.  一个软件制造商的协会(unicode.org)

各自研发的项目

ISO开发了ISO 10646项目

Unicode协会开发了Unicode项

 

在1991年前后,双方都认识到世界不需要两个不兼容的字符集。于是它们开始合并双方的工作成果,并为创立一个单一编码表而协同工作。从Unicode2.0开始,Unicode项目采用了与ISO 10646-1相同的字库和字码。

 

五.Unicode的最新标准

目前两个项目仍都存在,并独立地公布各自的标准。

1.Unicode协会现在的最新版本是2005年的Unicode 4.1.0。

2.ISO的最新标准是10646-3:2003。

六.UCS是什么的缩写

Unicode Character Set

七.UTF是什么的缩写

UCS Transformation Format

八.UCS与UTF的关系是怎样的?

UCS规定了怎么用多个字节表示各种文字。

怎样传输这些编码,是由UTF(UCS Transformation Format)规范规定的

小结:

UCS:表示各种文字

UTF:传输这些文字

九.UTF有哪些常见规范(也就是编码格式)

1.UTF-7

2.UTF-8

3.UTF-16

十.UTF的描述UTF-8和UTF-16编码的规范文档是什么?

IETF 的RFC2781和RFC3629以RFC的一贯风格,清晰、明快又不失严谨地描述了UTF-16和UTF-8的编码方法。

RFC2781描述UTF-16编码规范

RFC3629描述UTF-8编码规范

十一.IETF是什么缩写

Internet Engineering Task Force

十二.IETF组织的作用是什么

IETF负责维护的RFC

十三.RFC文档的作用是什么

RFC是Internet上一切规范的基础

十四.Unicode与ASCII,以及GB的兼容性关系

Unicode只与ASCII兼容(更准确地说,是与ISO-8859-1兼容),与GB码不兼容

十五.UCS两种格式

UCS-2和UCS-4

十六.UCS-2和UCS-4的区别

1.UCS-2就是用两个字节编码

2.UCS-4就是用4个字节(实际上只用了31位,最高位必须为0)编码

十七.UCS-2和UCS-4各自有多少个码位

UCS-2有2^16=65536个码位,UCS-4有2^31=2147483648个码位。

十八.什么叫UCS-4 BMP

UCS -4根据最高位为0的最高字节分成2^7=128个group。每个group再根据次高字节分为256个plane。每个plane根据第3个字节分为 256行 (rows),每行包含256个cells。当然同一行的cells只是最后一个字节不同,其余都相同。

也就是说:

UCS -4是4个字节,从高到低,从第1个字节到第4个字节,

第1个字节是高字节,第4个字节是低字节

第1个字节分成128个group

第2个字节分成256个plane

第3个字节分成256 个rows

第4个字节分成256个cells

group 0的plane 0被称作Basic Multilingual Plane, 即BMP。或者说UCS-4中,高两个字节为0的码位被称作BMP。

 

将UCS-4的BMP去掉前面的两个零字节就得到了UCS-2。在UCS-2的两个字节前加上两个零字节,就得到了UCS-4的BMP。而目前的UCS-4规范中还没有任何字符被分配在BMP之外。

相关文章
|
1月前
|
自然语言处理 C++
探究C/C++编码世界:从字符编码到中文处理之艺(二)
探究C/C++编码世界:从字符编码到中文处理之艺
37 2
|
1月前
|
存储 自然语言处理 程序员
探究C/C++编码世界:从字符编码到中文处理之艺(一)
探究C/C++编码世界:从字符编码到中文处理之艺
35 1
|
1月前
|
存储 自然语言处理 Linux
探究C/C++编码世界:从字符编码到中文处理之艺(三)
探究C/C++编码世界:从字符编码到中文处理之艺
44 2
|
6月前
|
JavaScript 数据安全/隐私保护
41 # 编码的问题
41 # 编码的问题
33 0
|
JavaScript
编码
编码
68 0
|
Web App开发 存储 Java
编码模式讲解| 学习笔记
快速学习编码模式讲解。
128 0
编码模式讲解| 学习笔记
|
开发者 Python
字符串的编码|学习笔记
快速学习字符串的编码
67 0
|
存储 开发者 Python
数制与编码
十进制整数转换为二进制数 可以将十进制数逐次用2除,取余数,一直到商为0.然后把全部余数按相反的次序排列起来。(除二取余)
256 0
数制与编码
|
机器学习/深度学习 算法 索引
关于Onehot编码的总结
关于Onehot编码的总结
531 0
关于Onehot编码的总结