计算机字符编码原理 (个人理解)

 

没有中介,只有翻译。 就像两个国家人民交流一样,只需要找一个懂两国语言的翻译就可以了。

而所有公认的编码,都是有标准的编码规则,所以在软件世界里,每个翻译都是全球通。

下面是“好”字在UTF-8编码下转换成GBK编码的过程,每个过程都有显示它的存储字节(详见od命令输出):

 

TTc:Test ttc$ echo "好" > utf

TTc:Test ttc$ file utf

utf: UTF-8 Unicode text

TTc:Test ttc$ od -t x1 utf

0000000    e5  a5  bd  0a     “好” UTF-8 的存储编码是 0xe5  0xa5  0xbd       ; 0x0a 是回车符

0000004

TTc:Test ttc$ iconv -f utf-8 -t gbk utf > gbk

TTc:Test ttc$ od -t x1 gbk

0000000    ba  c3  0a         “好” GBK 的存储编码是 0xba    0xc3 ; 0x0a 是回车符

0000003

TTc:Test ttc$ file gbk

gbk: ISO-8859 text

TTc:Test ttc$

 

Iconv 就是 Unix 下的字符编码翻译程序

你可能感兴趣的:(How&Why)