## 字符集和编码方式的区别
字符集和编码方式的主要区别:
1. **目的不同**:
- 字符集定义了可用的字符及其对应的数字编号(码点)。
- 编码方式定义了如何将这些字符转换为计算机可以存储和传输的二进制数据。
2. **抽象程度不同**:
- 字符集是一种抽象的定义,告诉我们有哪些字符可用。
- 编码方式是一种具体的实现,告诉我们如何在计算机中表示这些字符。
3. **灵活性不同**:
- 一个字符集可以有多种编码方式。比如,Unicode字符集可以用UTF-8、UTF-16等多种方式编码。
- 但一种编码方式通常只对应一个特定的字符集。
| 名称 | 类型 | 主要用途 |
| ------- | -------- | --------------------------------- |
| ASCII | 字符集和编码 | 表示基本的英文字符和符号 |
| Unicode | 字符集 | 定义世界上几乎所有的字符 |
| UTF-8 | 字符编码 | 将Unicode字符编码为二进制格式 |
| Base64 | 数据编码 | 将二进制数据转换为ASCII可打印字符 |
| | | |
ANSCII和ANSI核心区别:ASCII面向美国以及一些西欧文字编码方案 ANSI编码包含ASCII之外还有其他国家自己的编码方案`
### ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)
#### ASCII是什么
- ASCII一种标准的单字节字符编码方案
#### ASCII特性
- ASCII 保留前 32 个代码(数字 0-31 十进制)用于控制字符:代码最初不打算表示可打印信息(0-127与ANSI编码重叠)
---
### ANSI(American National Standards Institute,美国国家标准学会)
#### ANSI是什么
- ANSI一种字符代码
#### ANSI特性
- ANSI编码仅在前128(0-127)个与ASCII码相同,之后的字符全是某个国家语言的所有字符。
- ANSI编码用了8个位(最多256种组合可以表示256个不同的字
- ANSCI编码两个字节最多可以存储的字符数目是2的16次方,即65536个字符
- 各国有各国的标准。受制于当时的条件,不同语言之间的ANSI码之间不能互相转换
> 在简体中文Windows操作系统中,ANSI 编码代表 GB2312编码;
> 在繁体中文Windows操作系统中,ANSI编码代表Big5;
> 在日文Windows操作系统中,ANSI 编码代表 JIS 编码。
excerpt
<!-- more -->
关于自然语言的计算机处理还有一个更麻烦的东西叫做 " 字符集 "。在计算机发展的早期,各个国家和地区的人们 " 各自为政 ",发明了许多字符编码方式来处理文字,比如
英语世界用的 ASCII、
汉语世界用的 GBK、BIG5,
日语世界用的 Shift_JIS 等。同样的一段文字,用一种编码显示正常,换另一种编码后可能就会变得一团糟。所以
后来就出现了 Unicode 和 UTF-8,把世界上所有的语言都容纳在一种编码方案里,遵循 UTF-8 字符编码方式的 Unicode 字符集也成为了互联网上的标准字符集。