计算机
存储单位
计算机中表示信息的最小单位为bit(比特),亦称位,是数据传输的最小单位。数据存储一般以Byte(字节)作为基本单位。
1MB = 1024KB 1KB = 1024B 1B = 8 bit。为什么数据存储要以“字节”作为基本单位?
ACSII码
ACSII是一套单字节编码系统,是美国信息交换标准代码。在这套标准中,定义了95个可显示字符(图形),33个控制字符,这些控制符大多已废弃。要明确一点,显示器给我们显示的数字(0-9)、字母(a-z)及符号($@^等)都是图形。比如:
二进制码:0011 0110 代表图形 6
二进制码:0101 0001 代表图形 Q
二进制码:0111 0001 代表图形 q
二进制码:0100 0000 代表图形 @
二进制码:0000 1101 代表控制 Enter键(不可显示)
二进制码:0001 1111 代表控制 单元分隔符(不可显示)
由于ACSII码只适合现代美国英语,对西欧语音、中文等其他语言都无法支持,具有很大缺陷。所以,以多字节编码的Unicode码作为编码标准出现了。
Unicode 编码系统
Unicode又称万国码,是计算机科学领域里的一项业界标准,包括字符集、编码方案等。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
Unicode编码系统体系由两部分构成:
- 通用字符集(Universal Character Set, UCS),UCS-2用两个字节编码,UCS-4用4个字节编码
- 编码方式 (Unicode Transformation Format,UTF)
UTF-8
UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码。UTF-8用1到6个字节编码Unicode字符,后经重新规范最多只能用4个字节编码Unicode字符:
128个US-ASCII字符只需一个字节编码,也就是说兼容了ACSII码。
希腊文、阿拉伯文、叙利亚文等需要两个字节编码
大部分常用汉字使用三个字节编码,生僻字可能用到四个字节编码