ascii编码(美国): l 0b1101100 o 0b1101111 v 0b1110110 e 0b1100101 GBK编码(中国): 老 0b11000000 0b11001111 男 0b11000100 0b11010000 孩 0b10111010 0b10100010 Shift_JIS编码(日本): 私 0b10001110 0b10000100 は 0b10000010 0b11001101 ks_c_5601-1987编码(韩国): ? 0b10110011 0b10101010 ? 0b10110100 0b11000010 TIS-620编码(泰国): ??? 0b10101001 0b11010001 0b10111001 ...
Unicode解决了字符和二进制的对应关系,但是使用unicode表示一个字符,太浪费空间。例如:利用unicode表示“Python”需要12个字节才能表示,比原来ASCII表示增加了1倍。
为了解决存储和网络传输的问题,出现了Unicode Transformation Format,学术名UTF,即:对unicode中的进行转换,以便于在存储和网络传输时可以节省空间!
UTF 是为unicode编码 设计 的一种 在存储 和传输时节省空间的编码方案。
由于所有的系统、编程语言都默认支持unicode,那你的gbk软件放到美国电脑 上,加载到内存里,变成了unicode,中文就可以正常展示了。
unicode与gbk的映射表: http://www.unicode.org/charts/
参考文献:
【1】python 之路,致那些年,我们依然没搞明白的编码 - 金角大王 - 博客园
原文:https://www.cnblogs.com/nxf-rabbit75/p/12114418.html