Unicode:统一字符集,将世界上所有的字符都包含在内的一个字符集,遇到两个问题:
1、Unicode统一规定要用3或4个字节表示一个字符,这样非常浪费空间。
2、如何区别unicode和ascii,计算机如何知道3个字节表示一个字符还是表示三个字符呢?
UTF-8:是unicode实现方式之一,它的最大特点就是变长的编码方式
编码规则:
1、对于单字节符号,字节的第一位设为0,后面7位为这个符号的Unicode码,对于英语字母,UTF-8编码和ASCII码是相同的。
2、对于N字节的符号,第1个字节的前N位都设为1,第N+1个位设为0,后面字节的前两位一律设为10,剩下的没有提及的二进制位,全部为这个符号的Unicode码
ASCII: 8位2进制,最高位始终为0,共128个英语字符