ASCII编码,美国信息交换标准码,用8位,也就是一个字节表示256个字符,其中0开头的128个字符时常用字母和符号,1开头的是其他特殊字符。
但是,如果加上国际语言,8位就不够了,比如汉字就有上万个字符,这就导致同一个编号在不同的标准中对应不同的字符。
unicode是一个16位的字符集,字符与码点一一对应。共有17个字符平面,因此可以储存17*2^16=1114112个字符,汉字也包括在内,例如汉字“我”的unicode值为\u6211,6621就是码点的十六进制表示。
unicode没有规定如何编码这些字符,也没有规定如何表示字符平面,因此就诞生了utf(unicode转换格式,Unicode Transformation Format),utf-8和utf-16就规定了unicode字符集在计算机内和网络传输时的编码方式。
utf8的的特点是可变长,即英文字符用8位,需要16位时用16位,utf16则始终使用16位的储存。
网友评论