编码总结

总是被编码的一些类型弄的团团转,大多数情况下是蒙的,今天对这一块做下总结.

 

ASCII:

文本编码的基础,0x00-0x7F(0-128)的范围.

 

ANSI:

这些使用1到4个字节来表示字符的各种延伸编码方式(比如GBK,GB2312(中国出台的)),称为ANSI编码(在简体中文Windows操作系统中,ANSI 编码代表 GBK 编码;在繁体中文Windows操作系统中,ANSI编码代表Big5;在日文Windows操作系统中,ANSI 编码代表 Shift_JIS 编码).记事本中默认使用的是ANSI编码.

特点: 不同的ANSI编码之间不兼容. 0x00-0x7F之间字符只占用一个字节.

 

UNICODE:

有两个标准UCS-2和UCS-4,前者是两个字节代表一个字符,后者是四个字节.与这个标准对应的存储方式UTF(Unicode Transformation Format)分别是UTF-16和UFT-32.(更详细的分为大小端,通过BOM(byte-order mark),即字节顺序标记来标志)

bom作用:
1、标志编码方案,比如,utf8的bom是 0x ef bb bf ,utf16的bom是FEFF, (utf8不带BOM是标准形式,带BOM是微软的习惯)
2、标志大小端序,"多字节为编码单元"的编码方案都会存在大小端问题,比如utf16存在大小端序的问题,如果bom是FEFF,则表示大端序,如果bom是FFFE,则表示小端序。
————————————————
版权声明:本文为CSDN博主「QQ_851228082」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wangjun5159/article/details/49178305

上述两种方式对于纯ASCII文件中会造成浪费,后来又定义了UFT-8的方式.通过第一个字节的范围就知道编码的字节数,即节省了内存,也能保证原有的字符表示容量.

 

tips:总结之后最好把参考文献附在后面.

posted @ 2020-03-14 19:59  心媛意码  阅读(136)  评论(0编辑  收藏  举报