Windows中的Code Page,按照引用领域来划分,可以分为两类:ANSI Code Page和 OEM Code Page
ANSI Code Page的官网正式叫法其实是Windows Code Page。但是由于ANSI Code Page被误用的太广泛了,索性微软也就接受了此叫法,然后就叫做ANSI Code Page了。
类似地,ANSI Code Page=ANSI Windows Code Page
ANSI Code Page主要是用于Windows系统中,本地编码是非Unicode的,图形用户界面(GUI)程序。
ANSI的Code Page相关的表格,参见第 3.1.1 节 “ANSI Code Page表”
OEM Code Page主要是用于Windows系统中的命令行界面(console)程序,虚拟DOS。
OEM Code Page可以视为是DOS和IBM PC时代的(过渡)剩余产品。
除了ANSI Code Page之外,之所以又设计出一个OEM Code Page,是因为:
- 兼容性
因为作为新的图形用户界面系统的Windows,也要兼容旧的命令行程序,即向后兼容性。
- 字体和硬件的要求
字体和旧的VGA硬件建议,文字图形界面所用的编码,最好和Code Page 437兼容。
多数的OEM的Code Page,和(非ASCII的)后半部分的CP437,都是公用同一套代码点(code point)的。
一般的OEM Code Page的后半段编码,和ANSI Code Page,完全不同。不过,对于部分双字节编码的,定长的Code Page(如泰语的847,越南语的1258)和多字节CJK编码的Code Page(如932,936,949,950)来说,ANSI和OEM的Code Page,都用的同一套编码。
和OEM Code Page相关的表格,参见第 3.1.2 节 “OEM Code Page表”
其中,ANSI和OEM共有的一些Code Page,可参见第 3.1.3 节 “ANSI和OEM共有的Code Page表”
而其他一些常见的Code Page,可参见第 3.1.4 节 “其他一些常见的Code Page表”