Template‐ノート:特殊文字に、このページに関する質問があります。(2023年1月)
質問の要約:Template:特殊文字で「Microsoftコードページ932(はしご高)」と書かれている場合があること
この記事には複数の問題があります。改善
やノートページでの議論にご協力ください。Microsoft コードページ 932(マイクロソフト コードページ 932)は(以下 CP932)、マイクロソフト及び、MS-DOSのOEMベンダがShift_JISを独自に拡張した文字コードである。また、同時にCP932は、Shift_JISのWindowsアプリケーションにおける「実装」を指す用語であるとも言える。
この項では、主にShift_JISにおけるマイクロソフトおよび各ベンダの独自拡張部分について言及する。ベンダ独自拡張部分以外の内容については、Shift_JISを参照されたい。
また、マイクロソフト標準キャラクタセットの項目も併せて参照されたい。
CP932の呼称(別名)の整理
Windows-31J
Windows 3.1 (J) のリリースに合わせて、マイクロソフトが IBMと日本電気 (NEC) のコードを統合して作った符号化文字集合。1993 年以降、マイクロソフトが自社のドキュメント等で「CP932」という用語を使って表している対象は、常にこの「Windows-31J」である。この名前は IANA に登録されている。
MS932
Java で、「IBM のコードページ 932」と「Windows-31J」を区別するための用語。Windows-31Jを指す。
CP932
MS-DOSとWindowsにおける日本語コードページを表す用語。「Windows-31J」が制定されるまでは、OEMベンダによって文字集合が違う。
MS 漢字コード
「CP932」とほぼ同じ意味の用語である。マイクロソフトが(Shift_JIS という符号化方式を)策定したという点や、マイクロソフトが(JIS X 0208という文字集合に対して)文字を独自に追加した点を強調したい場合に用いられる。また、単に「シフトJIS」のことを指している場合もある。
OEM コードページ 932
Windows 3.1 日本語版の発売以前における、OEMベンダ各自の拡張を許した仕様の文字セット。
以下は、マイクロソフトから離れ、現在では公的機関からも認められた文字符号化方式を指す用語である。
シフトJIS
JIS X 0208符号化文字集合を一定の規則に従ってシフトした文字符号化方式。具体的な内容はJIS X 0208:1997に「シフト符号化表現」として記載がある。しかし、文脈によってはベンダ拡張されたコードセットを指している場合もある。
Shift_JIS
「シフトJIS」のIANA登録名。
SJIS
Shift_JISの短縮形。JavaではShift_JISと同義語。
構造この項目では色を扱っています。閲覧環境によっては、色が適切に表示されていない場合があります。.mw-parser-output .hlist ul,.mw-parser-output .hlist ol{padding-left:0}.mw-parser-output .hlist li,.mw-parser-output .hlist dd,.mw-parser-output .hlist dt{margin-right:0;display:inline-block;white-space:nowrap}.mw-parser-output .hlist dt:after,.mw-parser-output .hlist dd:after,.mw-parser-output .hlist li:after{white-space:normal}.mw-parser-output .hlist li:after,.mw-parser-output .hlist dd:after{content:" ・\a0 ";font-weight:bold}.mw-parser-output .hlist dt:after{content:": "}.mw-parser-output .hlist-pipe dd:after,.mw-parser-output .hlist-pipe li:after{content:" |\a0 ";font-weight:normal}.mw-parser-output .hlist-hyphen dd:after,.mw-parser-output .hlist-hyphen li:after{content:" -\a0 ";font-weight:normal}.mw-parser-output .hlist-comma dd:after,.mw-parser-output .hlist-comma li:after{content:"、";font-weight:normal}.mw-parser-output .hlist-slash dd:after,.mw-parser-output .hlist-slash li:after{content:" /\a0 ";font-weight:normal}.mw-parser-output .hlist dd:last-child:after,.mw-parser-output .hlist dt:last-child:after,.mw-parser-output .hlist li:last-child:after{content:none}.mw-parser-output .hlist dd dd:first-child:before,.mw-parser-output .hlist dd dt:first-child:before,.mw-parser-output .hlist dd li:first-child:before,.mw-parser-output .hlist dt dd:first-child:before,.mw-parser-output .hlist dt dt:first-child:before,.mw-parser-output .hlist dt li:first-child:before,.mw-parser-output .hlist li dd:first-child:before,.mw-parser-output .hlist li dt:first-child:before,.mw-parser-output .hlist li li:first-child:before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child:after,.mw-parser-output .hlist dd dt:last-child:after,.mw-parser-output .hlist dd li:last-child:after,.mw-parser-output .hlist dt dd:last-child:after,.mw-parser-output .hlist dt dt:last-child:after,.mw-parser-output .hlist dt li:last-child:after,.mw-parser-output .hlist li dd:last-child:after,.mw-parser-output .hlist li dt:last-child:after,.mw-parser-output .hlist li li:last-child:after{content:")\a0 ";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li:before{content:" "counter(listitem)" ";white-space:nowrap}.mw-parser-output .hlist dd ol>li:first-child:before,.mw-parser-output .hlist dt ol>li:first-child:before,.mw-parser-output .hlist li ol>li:first-child:before{content:" ("counter(listitem)" "}.mw-parser-output .navbar{display:inline;font-size:75%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}.mw-parser-output .infobox .navbar{font-size:88%}.mw-parser-output .navbox .navbar{display:block;font-size:88%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}
表
話
編
歴
第1バイト0123456789ABCDEF
0????????????????
1????????????????
2?!"#$%&'()*+,-./
30123456789:;<=>?
4@ABCDEFGHIJKLMNO
5PQRSTUVWXYZ[\]^_
6`abcdefghijklmno
7pqrstuvwxyz{|}??
8
9
A。「」、・ヲァィゥェォャュョッ
Bーアイウエオカキクケコサシスセソ
Cタチツテトナニヌネノハヒフヘホマ
Dミムメモヤユヨラリルレロワン゙゚
E
F
第2バイト0123456789ABCDEF
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
ASCII制御文字
ASCIIと同一の文字
ASCIIと異なる文字
半角カナ
2バイト文字の第1バイト
2バイト文字の第2バイト(区番号が奇数の場合)
2バイト文字の第2バイト(区番号が偶数の場合)
未使用
Shift_JISでは空き領域や未使用であった13区(874016 - 879E16)、89 - 92区(ED4016 - EEFC16)、115 - 119区(FA4016 - FC9E16)に合計845文字を追加。ただし同じ文字が互換性のため重複して含まれており実質447文字の追加である。また、95 - 114区(F04016 - F9FC16)も利用者定義領域(外字領域)となっている。 CP932が、現在の「Windows-31J」の形として完成に至るまでには複雑な経緯がある。 1982年(JIS X 0208-1983策定の前年)、JIS C 6226(JIS X 0208)を複雑にシフトさせた文字符号化方式としてShift_JISが誕生した。この符号化方式(を利用した拡張符号化文字集合)は、マイクロソフトによりMS-DOSにおける標準日本語コードとして採用され、「コードページ 932 (CP932)」という管理番号を与えられた。 しかし、マイクロソフトは、MS-DOSにおける唯一の日本語用コードページである「CP932」を、OEMメーカーの自由に任せていた。そのため、NECのPC-9800シリーズ、IBMのPS/55 シリーズ、富士通のFMRシリーズなどは全て、MS-DOSを搭載し文字符号化方式もShift_JISを採用しているコンピュータであるにもかかわらず、登録されている文字集合がバラバラだった。 以下、代表的な2つの実装を解説する。 1983年、IBMは、日本語処理に重点を置いたデスクトップコンピュータ「マルチステーション5550」を発売する際、利用する符号化文字集合を以下のように定めた。
歴史
CP932 の誕生と発展
IBM
Shift_JISをベースとする。