代码页

1概况编辑

代码页字符集 编码的别名,也有人称"内码表"。早期,代码页是 IBM称呼电脑 BIOS本身支持的 字符集 编码的名称。当时通用的操作系统都是 命令行界面系统,这些操作系统直接使用BIOS供应的VGA功能来显示字符,操作系统的 编码支持也就依靠BIOS的编码。现在这BIOS代码页被称为 OEM代码页图形操作系统解决了此问题,图形操作系统使用自己字符呈现引擎可以支持很多不同的 字符集 编码
早期 IBM微软内部使用特别数字来标记这些 编码,其实大多的这些 编码已经有自己的名称了。虽然 图形操作系统可以支持很多编码,很多 微软程序还使用这些数字来点名某编码。

2简介编辑

概述

对于 字符Unicode数据的位模式的定义,此模式代表特定字母、数字或符号(例如 0x20 代表一个空格,而 0x74 代表字符“t”)。一些 数据类型每个 字符使用一个 字节;每个字节可以具有 256 个不同的位模式中的一个模式。
在计算机中, 字符由不同的位模式(ON 或 OFF)表示。每个 字节有 8 位,这 8 位可以有 256 种不同的 ON 和 OFF 组合模式。对于使用 1 个 字节存储每个 字符的程序,通过给每个位模式指派 字符可表示最多 256 个不同的字符。2 个 字节有 16 位,这 16 位可以有 65,536 种唯一的 ON 和 OFF 组合模式。使用 2 个 字节表示每个 字符的程序可表示最多 65,536 个字符。

单字节

字节代码页是 字符定义,这些字符映射到每个字节可能有的 256 种位模式中的每一种。代码页定义大小写 字符、数字、符号以及 !、@、#、% 等特殊字符的位模式。每种欧洲语言(如德语和西班牙语)都有各自的单 字节代码页。虽然用于表示 A 到 Z 拉丁字母表 字符的位模式在所有的代码页中都相同,但用于表示重音字符(如"é"和"á")的位模式在不同的代码页中却不同。如果在运行不同代码页的计算机间交换数据,必须将所有 字符数据由发送计算机的代码页转换为接收计算机的代码页。如果源数据中的扩展 字符在接收计算机的代码页中未定义,那么数据将丢失。如果某个数据库为来自许多不同国家的 客户端提供服务,则很难为该数据库选择这样一种代码页,使其包括所有客户端计算机所需的全部扩展 字符。而且,在代码页间不停地转换需要花费大量的处理时间。

双字节

仅靠单 字节 字符集存储许多语言所使用的字符也是不够的。例如,一些亚洲语言包含上千个 字符,所以每个字符必须使用双 字节。双 字节 字符集正是为这些语言定义的。但是,这些语言都有各自的代码页,在运行不同双 字节代码页的计算机之间传输数据也存在困难。

3描述编辑

代码页简称全称 
37IBM037IBM EBCDIC (US-Canada) 
437IBM437OEM United States 
500IBM500IBM EBCDIC (International) 
708ASMO-708Arabic (ASMO 708) 
720DOS-720Arabic (DOS) 
737ibm737Greek (DOS) 
775ibm775Baltic (DOS) 
850ibm850Western European (DOS) 
852ibm852Central European (DOS) 
855IBM855OEM Cyrillic 
857ibm857Turkish (DOS) 
858IBM00858OEM Multilingual Latin I 
860IBM860Portuguese (DOS) 
861ibm861Icelandic (DOS) 
862DOS-862Hebrew (DOS) 
863IBM863French Canadian (DOS) 
864IBM864Arabic (864) 
865IBM865Nordic (DOS) 
866cp866Cyrillic (DOS) 
869ibm869Greek, Modern (DOS) 
870IBM870IBM EBCDIC (Multilingual Latin-2) 
874windows-874Thai (Windows) 
875cp875IBM EBCDIC (Greek Modern) 
932shift_jisJapanese (Shift-JIS) 
936gb2312Chinese Simplified (GB2312)*
949ks_c_5601-1987Korean 
950big5Chinese Traditional (Big5) 
1026IBM1026IBM EBCDIC (Turkish Latin-5) 
1047IBM01047IBM Latin-1 
1140IBM01140IBM EBCDIC (US-Canada-Euro) 
1141IBM01141IBM EBCDIC (Germany-Euro) 
1142IBM01142IBM EBCDIC (Denmark-Norway-Euro) 
1143IBM01143IBM EBCDIC (Finland-Sweden-Euro) 
1144IBM01144IBM EBCDIC (Italy-Euro) 
1145IBM01145IBM EBCDIC (Spain-Euro) 
1146IBM01146IBM EBCDIC (UK-Euro) 
1147IBM01147IBM EBCDIC (France-Euro) 
1148IBM01148IBM EBCDIC (International-Euro) 
1149IBM01149IBM EBCDIC (Icelandic-Euro) 
1200utf-16Unicode*
1201unicodeFFFEUnicode (Big-Endian)*
1250windows-1250Central European (Windows) 
1251windows-1251Cyrillic (Windows) 
1252Windows-1252Western European (Windows)*
1253windows-1253Greek (Windows) 
1254windows-1254Turkish (Windows) 
1255windows-1255Hebrew (Windows) 
1256windows-1256Arabic (Windows) 
1257windows-1257Baltic (Windows) 
1258windows-1258Vietnamese (Windows) 
1361JohabKorean (Johab) 
10000macintoshWestern European (Mac) 
10001x-mac-japaneseJapanese (Mac) 
10002x-mac-chinesetradChinese Traditional (Mac) 
10003x-mac-koreanKorean (Mac)*
10004x-mac-arabicArabic (Mac) 
10005x-mac-hebrewHebrew (Mac) 
10006x-mac-greekGreek (Mac) 
10007x-mac-cyrillicCyrillic (Mac) 
10008x-mac-chinesesimpChinese Simplified (Mac)*
10010x-mac-romanianRomanian (Mac) 
10017x-mac-ukrainianUkrainian (Mac) 
10021x-mac-thaiThai (Mac) 
10029x-mac-ceCentral European (Mac) 
10079x-mac-icelandicIcelandic (Mac) 
10081x-mac-turkishTurkish (Mac) 
10082x-mac-croatianCroatian (Mac) 
20000x-Chinese-CNSChinese Traditional (CNS) 
20001x-cp20001TCA Taiwan 
20002x-Chinese-EtenChinese Traditional (Eten) 
20003x-cp20003IBM5550 Taiwan 
20004x-cp20004TeleText Taiwan 
20005x-cp20005Wang Taiwan 
20105x-IA5Western European (IA5) 
20106x-IA5-GermanGerman (IA5) 
20107x-IA5-SwedishSwedish (IA5) 
20108x-IA5-NorwegianNorwegian (IA5) 
20127us-asciiUS-ASCII*
20261x-cp20261T.61 
20269x-cp20269ISO-6937 
20273IBM273IBM EBCDIC (Germany) 
20277IBM277IBM EBCDIC (Denmark-Norway) 
20278IBM278IBM EBCDIC (Finland-Sweden) 
20280IBM280IBM EBCDIC (Italy) 
20284IBM284IBM EBCDIC (Spain) 
20285IBM285IBM EBCDIC (UK) 
20290IBM290IBM EBCDIC (Japanese katakana) 
20297IBM297IBM EBCDIC (France) 
20420IBM420IBM EBCDIC (Arabic) 
20423IBM423IBM EBCDIC (Greek) 
20424IBM424IBM EBCDIC (Hebrew) 
20833x-EBCDIC-KoreanExtendedIBM EBCDIC (Korean Extended) 
20838IBM-ThaiIBM EBCDIC (Thai) 
20866koi8-rCyrillic (KOI8-R) 
20871IBM871IBM EBCDIC (Icelandic) 
20880IBM880IBM EBCDIC (Cyrillic Russian) 
20905IBM905IBM EBCDIC (Turkish) 
20924IBM00924IBM Latin-1 
20932EUC-JPJapanese (JIS 0208-1990 and 0212-1990) 
20936x-cp20936Chinese Simplified (GB2312-80)*
20949x-cp20949Korean Wansung*
21025cp1025IBM EBCDIC (Cyrillic Serbian-Bulgarian) 
21866koi8-uCyrillic (KOI8-U) 
28591iso-8859-1Western European (ISO)*
28592iso-8859-2Central European (ISO) 
28593iso-8859-3Latin 3 (ISO) 
28594iso-8859-4Baltic (ISO) 
28595iso-8859-5Cyrillic (ISO) 
28596iso-8859-6Arabic (ISO) 
28597iso-8859-7Greek (ISO) 
28598iso-8859-8Hebrew (ISO-Visual)*
28599iso-8859-9Turkish (ISO) 
28603iso-8859-13Estonian (ISO) 
28605iso-8859-15Latin 9 (ISO) 
29001x-EuropaEuropa 
38598iso-8859-8-iHebrew (ISO-Logical)*
50220iso-2022-jpJapanese (JIS)*
50221csISO2022JPJapanese (JIS-Allow 1 byte Kana)*
50222iso-2022-jpJapanese (JIS-Allow 1 byte Kana - SO/SI)*
50225iso-2022-krKorean (ISO)*
50227x-cp50227Chinese Simplified (ISO-2022)*
51932euc-jpJapanese (EUC)*
51936EUC-CNChinese Simplified (EUC)*
51949euc-krKorean (EUC)*
52936hz-gb-2312Chinese Simplified (HZ)*
54936GB18030Chinese Simplified (GB18030)*
57002x-iscii-deISCII Devanagari*
57003x-iscii-beISCII Bengali*
57004x-iscii-taISCII Tamil*
57005x-iscii-teISCII Telugu*
57006x-iscii-asISCII Assamese*
57007x-iscii-orISCII Oriya*
57008x-iscii-kaISCII Kannada*
57009x-iscii-maISCII Malayalam*
57010x-iscii-guISCII Gujarati*
57011x-iscii-paISCII Punjabi*
65000utf-7Unicode (UTF-7)*
65001utf-8Unicode (UTF-8)*
65005utf-32Unicode (UTF-32)*
65006utf-32BEUnicode (UTF-32 Big-Endian)*

 

4标准编辑

为解决在网络中支持多种代码页时出现的 字符转换和解释问题,ISO 标准化组织和称为 Unicode Consortium 的团体定义了 Unicode 标准。Unicode 使用双 字节 存储每个字符。由于 65,536 个 字符足以涵盖世界上所有语言常用的字符,因此 Unicode 标准适用于所有的主要语言。如果网络中的所有计算机和程序都使用 Unicode,则无需进行任何 字符转换,每个用户与所有其它用户看到的字符完全相同,并且不会丢失任何字符。
在运行 Microsoft Windows 操作系统的计算机上,操作系统和 Windows 应用程序使用的代码页由 Windows  区域设置定义。 区域设置是在安装操作系统时选择的。Windows 应用程序使用由 Windows  区域设置定义的代码页来解释数据。Windows 应用程序还支持 宽字符数据,即 Unicode 数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值