コードページ850

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ナビゲーションに移動 検索に移動
コードページ850
Codepage-850.png
Enhanced Graphics Adapterによって通常表示される9×14のグリフによるコードページ850の文字セット
別名 DOS Latin 1,
OEM 850
言語 英語その他多種英語版
区分 拡張ASCII, OEMコードページ英語版
拡張元 US-ASCII
ベース OEM-US
変換、エンコード対象 ISO/IEC 8859-1 (順番はかえられている)
テンプレートを表示

コードページ850(CP 850やIBM 00850[1]、OEM 850[2]、DOS Latin 1[3]とも知られている)は西ヨーロッパでDOSPSIONによるEPOC16英語版の下で使われているコードページである。国設定やシステム設定によって、英語が話されている多様な地域(例えばイギリスアイルランドカナダ内)を含む多くの国ではコードページ850が主なコードページとして標準のOEMコードページ英語版になるが、(アメリカのように)英語が話されている他の地域ではハードウェアコードページ英語版であるコードページ437が標準で使われる[4]

コードページ850はシステムによって初めにWindows-1252(よくISO-8859-1と誤表記される)に置き換えられ、次にUCS-2に置き換えられ、最終的にはUTF-16に置き換えられた。 [脚注 1]

罫線素片ギリシア文字、様々な記号がダイアクリティカルマークつきのラテン文字を追加して置換されたことにより、西ヨーロッパ言語(ISO 8859-1からのすべての文字が含まれる)のサポートが大幅に向上している点でコードページ850はコードページ437と異なる。同時に、テキストモードでGUI風の画面を表示するために罫線素片を使用していたプログラムによる表示上の不具合がこの変更によってよく発生した。

1998年には、コードページ858がこのコードページからコードポイント213(D5hex)を点のないi‹ı›からユーロ記号‹€›に変更した派生としてできた[5]。これにもかかわらず、1998年にリリースされたIBMのPC DOS 2000は新しいコードページであるコードページ858のサポートを加えるのでなくコードページ850の定義を修正コードページ850と呼ばれるものにしてコードポイント213番にユーロ記号を含めるようにした。 [脚注 2] [7][6][8]

文字セット[編集]

コードページ850は次の表に表される。[2][9]対応するUnicodeのコードポイントと十進法によるコードポイントが各文字とあわせて表示される。表の最初の半分(0から127のコードポイント)はASCIIと同じであるため、後の半分(128番から255番のコードポイント)のみを表示する。なお1番から31番のコードポイントと127番のコードポイント(01–1Fhexと7Fhex)は状況によってASCII制御文字であったりコードページ437のグラフィック文字のどちらかになる[1]

凡例:

Code page 850
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
 
8−
 
Ç
00C7
128
ü
00FC
129
é
00E9
130
â
00E2
131
ä
00E4
132
à
00E0
133
å
00E5
134
ç
00E7
135
ê
00EA
136
ë
00EB
137
è
00E8
138
ï
00EF
139
î
00EE
140
ì
00EC
141
Ä
00C4
142
Å
00C5
143
 
9−
 
É
00C9
144
æ
00E6
145
Æ
00C6
146
ô
00F4
147
ö
00F6
148
ò
00F2
149
û
00FB
150
ù
00F9
151
ÿ
00FF
152
Ö
00D6
153
Ü
00DC
154
ø
00F8
155
£
00A3
156
Ø
00D8
157
×
00D7
158
ƒ
0192
159
 
A−
 
á
00E1
160
í
00ED
161
ó
00F3
162
ú
00FA
163
ñ
00F1
164
Ñ
00D1
165
ª
00AA
166
º
00BA
167
¿
00BF
168
®
00AE
169
¬
00AC
170
½
00BD
171
¼
00BC
172
¡
00A1
173
«
00AB
174
»
00BB
175
 
B−
 

2591
176

2592
177

2593
178

2502
179

2524
180
Á
00C1
181
Â
00C2
182
À
00C0
183
©
00A9
184

2563
185

2551
186

2557
187

255D
188
¢
00A2
189
¥
00A5
190

2510
191
 
C−
 

2514
192

2534
193

252C
194

251C
195

2500
196

253C
197
ã
00E3
198
Ã
00C3
199

255A
200

2554
201

2569
202

2566
203

2560
204

2550
205

256C
206
¤
00A4
207
 
D−
 
ð
00F0
208
Ð
00D0
209
Ê
00CA
210
Ë
00CB
211
È
00C8
212
ı
0131
213
Í
00CD
214
Î
00CE
215
Ï
00CF
216

2518
217

250C
218

2588
219

2584
220
¦
00A6
221
Ì
00CC
222

2580
223
 
E−
 
Ó
00D3
224
ß
00DF
225
Ô
00D4
226
Ò
00D2
227
õ
00F5
228
Õ
00D5
229
µ
00B5
230
þ
00FE
231
Þ
00DE
232
Ú
00DA
233
Û
00DB
234
Ù
00D9
235
ý
00FD
236
Ý
00DD
237
¯
00AF
238
´
00B4
239
 
F−
 
SHY
00AD
240
±
00B1
241

2017
242
¾
00BE
243

00B6
244
§
00A7
245
÷
00F7
246
¸
00B8
247
°
00B0
248
¨
00A8
249
·
00B7
250
¹
00B9
251
³
00B3
252
²
00B2
253

25A0
254
NBSP
00A0
255
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F

関連項目[編集]

脚注[編集]

  1. ^ 初めからUnicodeWindows NT系でネイティブなサポートがなされていたが、開発ツールのサポートやWindows 9x系との互換性の問題によって多くのアプリケーション8ビットのコードページを使い続けた。
  2. ^ この原因はMS-DOS/PC DOSの下でのコードページの切り替えロジックの実装上での制限にさかのぼれる可能性がある。MS-DOS/PC DOSでは.CPIファイルはサイズで64KB、最多で6つのコードページという制限があり、この制限はMS-DOSの一部のOEM版やWindows NTでは回避されており、DR-DOSには存在もしていなかった[6]。加えて、DR-DOSに存在しない制限としてCOUNTRY.SYS中の国/コードページは最大で146つまたは438つにMS-DOS/PC DOSのパーサーによって制限されている。[7]そのため、コードページ858のサポートを加えることは同時に他のコードページ(例 コードページ850)のサポートを止めるということにもなりえた。一部のアプリケーションはコードページ850を使うようにハードコードされていたことを踏まえると、それは当時実行可能な解決方法ではなかったのかもしれない。(訳注: 翻訳時点 (2018-8-18) ではここの出典をコメントアウトされて原文に記載されています。)

参考文献[編集]

  1. ^ a b 00850”. Code pages by CPGID. IBM. 2016年6月6日時点のオリジナルよりアーカイブ。2016年6月6日閲覧。
  2. ^ a b OEM 850”. Go Global Developer Center. マイクロソフト. 2016年6月6日時点のオリジナルよりアーカイブ。2016年6月6日閲覧。
  3. ^ Code Page 850 MS-DOS Latin 1”. Developing International Software. マイクロソフト. 2016年6月6日閲覧。
  4. ^ Paul, Matthias (1997-07-30). “II.16.iii. Landessprachliche Unterstützung - Landescodes und Keyboard-Kürzel” (ドイツ語). NWDOS-TIPs — Tips & Tricks rund um Novell DOS 7, mit Blick auf undokumentierte Details, Bugs und Workarounds (e-book) (edition 3, release 157 ed.). http://www.antonis.de/dos/dos-tuts/mpdostip/html/nwdostip.htm 2016年6月6日閲覧。.  (NB. NWDOSTIP.TXT is a comprehensive work on Novell DOS 7 and OpenDOS 7.01, including the description of many undocumented features and internals. It is part of the author's yet larger MPDOSTIP.ZIP collection maintained up to 2001 and distributed on many sites at the time. The provided link points to a HTML-converted older version of the NWDOSTIP.TXT file.)
  5. ^ 00858”. Code pages by CPGID. IBM. 2016年6月6日時点のオリジナルよりアーカイブ。2016年6月6日閲覧。
  6. ^ a b Paul, Matthias (2001年8月27日). “Changing codepages in FreeDOS (follow-up)”. 2013年5月8日閲覧。 “[…] one could also create custom .CPI files in the traditional FONT style without difficulties, but you could only store up to […] six codepages in such a file if it should be useable by MS-DOS/PC DOS (some OEM issues and NT can handle files larger than 64 Kb, but MS-DOS/PC DOS can not).”
  7. ^ a b Paul, Matthias (2001年8月15日). “Changing codepages in FreeDOS”. 2016年6月6日時点のオリジナルよりアーカイブ。2016年6月6日閲覧。 “The new official ID for the Multilingual "codepage 850 with EURO SIGN" is 858, not 850. IBM will switch to use 858 instead of their 850 variant with future issues of their products. […] I can only guess why they didn't add 858 to their EGAx.CPI, COUNTRY.SYS, and KEYBOARD.SYS files in PC DOS 2000. Many third-party applications are designed to work with 850 and didn't know about 858 at the time PC DOS 2000 was released, so it's easier for everyone, but unfortunately it's not compatible. […] As explained above, COUNTRY.SYS and KEYBOARD.SYS contain only two codepage entries for a given country in Western issues of DOS. (In Arabic and Hebrew issues there can be up to 8 codepages for one country, in theory there is no limit below the range of allowed codepages 1..65534). […] The problem is that removing support for 850 might have caused compatibility problems with applications which are hard-wired to use 850. Adding 858 as a third choice to all the files would have increased the file and table sizes significantly. The COUNTRY.SYS file parser in MS-DOS/PC DOS IO.SYS/IBMBIO.COM sets aside a 6 Kb (for DOS 6) scratchpad to load all the info. This allows a maximum of 438 entries in a COUNTRY.SYS file to be accepted, otherwise you will get the message "COUNTRY.SYS too large.". The NLSFUNC parser does not have this limitation, and the file parsers in DR-DOS (kernel and NLSFUNC) also do not know of such a restriction. Older issues of MS-DOS/PC DOS even had a 2 Kb buffer for a maximum of 146 entries.” (訳注: 引用部分の翻訳: 多言語用の「ユーロ記号があるコードページ850」の新たな公式識別名は850ではなく858です。IBMは製品に将来的に問題がおこるIBMのコードページ850の派生ではなくコードページ858を使うようにするでしょう。[...]ただどうしてPC DOS 2000EGAx.CPICOUNTRY.SYSKEYBOARD.SYSファイルにコードページ858を加えなかったのか推測できます。PC DOS 2000がリリースされたとき、多くのサードパーティーのアプリケーションはコードページ850で動くように設計されていてコードページ858のことはわかりませんでした。そのためそうしたほうがだれにとっても楽なのですが不幸なことに互換性がありません。[...]上記で説明した通りにDOSは西洋向けではCOUNTRY.SYSとKEYBOARD.SYSは対象国向けには2つしかコードページの登録がありません。(アラブ語やヘブライ語向けのリリースでは一つの国にたいして最大で8つのコードページが含まれます。理屈上は1から65534の認められたコードページの範囲内では制限がありません。)[...]問題になるのはコードページ850のサポートをなくすことはコードページ850を使うようにハードコーディングされているアプリケーションとの互換性問題をおこす可能性があるということです。新たな選択肢としてコードページ858を増やすとファイルやテーブルのサイズが大きく増えたでしょう。MS-DOSやPC-DOSのIO.SYS/IBMBIO.COMのCOUNTRY.SYSのパーサーはCOUNTRY.SYSの情報をすべて読み込むために(DOS 6では)6KBのバッファを用意します。これによってCOUNTRY.SYSファイルには受け付けられる最大登録数が438つになり、それを超えていると「COUNRY.SYSが大きすぎます」というメッセージが出ます。NLSFUNCパーサーはこの制限がなく、DR-DOS(カーネルおよびNLSFUNC)のファイルパーサーもそのような制限はありません。MS-DOSやPC-DOSはさらに古いリリースではさらに2KBのバッファしかなく最大で146つの登録しかできませんでした。)
  8. ^ Starikov, Yuri (2005年4月11日). “15-летию Russian MS-DOS 4.01 посвящается” [15 Years of Russian MS-DOS 4.01] (ロシア語). 2014年5月7日閲覧。
  9. ^ cp850_DOSLatin1 to Unicode table”. The Unicode Consortium. 2016年6月6日閲覧。