ホーム > Windows-31J 情報 > Windows-31J の文字セット

Windows-31J の文字セット

このページは IANA の登録名は Windows-31J とされ、Windows Codepage 932 や Windows標準文字セットと呼ばれる文字セット、文字エンコーディングについて、私の知りうる範囲で説明をいたします。

IANA の登録では次のようになっています。

Name: Windows-31J
MIBenum: 2024
Source: Windows Japanese.  A further extension of Shift_JIS
        to include NEC special characters (Row 13), NEC
        selection of IBM extensions (Rows 89 to 92), and IBM
        extensions (Rows 115 to 119).  The CCS's are
        JIS X0201:1997, JIS X0208:1997, and these extensions.
        This charset can be used for the top-level media type "text",
        but it is of limited or specialized use (see RFC2278).
        PCL Symbol Set id: 19K
Alias: csWindows31J

文字セットは JIS X 0201:1997 (ラテン文字・片仮名) + JIS X 0208:1997 + NEC特殊文字(13区) + NEC選定IBM拡張文字(89〜92区) + IBM拡張文字(115〜119区) で、符号化方法 (エンコーディングスキーム) は、シフトJIS となっています。

各文字セットに関して Windows-31J で使われる場合の注意点があります。

JIS X 0201:1997

JIS X 0201 の 7ビット・8ビットコード での 0x7E は OVER LINE となっていますが、Windows-31J では TILDE の字形 (グリフ) が定義されています。JIS X 0201:1997 の改正で、送信者と受信者との間で明示的な合意がある場合は、0x7E の字形を TILDE と同じとして良いとされていますが、あくまでも文字の名称は OVER LINE でなければならないそうです。(JIS X 0201:1997 附属書2 OVER LINE の字形の許容範囲参照)

メモ : OADG109キーボードには OVER LINE が刻印されていますが、Windows-31J では TILDE で表示されるため、初心者のつまづきの1つとなっていていましたが、OADG109Aキーボードでは、刻印を TILDE に変更したようです。

JIS X 0208:1997

JIS C 6226-1987 で旧JIS漢字とも呼ばれた規格を出発点とし、JIS X 0208-1983 (新JIS漢字)、JIS X 0208-1990、JIS X 0208:1997 と改正されて来ました。

JIS X 0208:1997 は JIS X 0208-1990 と文字セットが同一ですが、規定を明確化し、あいまいさを除去することで、規格としての完成度を高めたものとなっています。この改正での調査結果がベースとなって JIS X 0213:2000 での文字追加が可能となりました。

Windows-31J に関係してくる改正として JIS X 0208-1983 での改正を説明しておきたいと思います。JIS C 6226-1983 からの主な改正点は次の通りです。

  1. 2区に39文字の記号、8区に罫線素片32文字を追加。
  2. 本来のコード位置の字形が簡略化され、簡略化されていない字形を持つ漢字4文字が84区に移された。(4文字追加)
  3. 22組の簡略字体と旧字体が、JIS第1水準とJIS第2水準の間でコード位置が入れ替えられた。
  4. 例示字体の変更 (代表的な文字としては「鴎」が [區鳥] から [区鳥] に変更になった)

2区に39文字の記号が追加されましたが、この中には、後で説明する13区のNEC特殊文字や89〜92区の NEC選定IBM拡張文字、115〜119区のIBM拡張文字の一部も含まれていて、同じ文字がお互いに別々のコード位置に定義されているため、Windows-31J では重複符号化されている事に注意する必要があります。特に Unicode との相互変換では注意を要します。

Windows-31J において2区と13区で重複して定義されている文字は次の9文字です。

∪∩∠⊥≡≒√∵∫

Windows-31J において2区と92区、115区で重複して定義されている文字は次の2文字です。

¬∵

次のシフトJISエンコーディングでの文字コード表で、水色のコード位置の文字が、Windows-31J では他のコード位置で重複符号化されています。灰色の文字は 1区の文字、もしくは JIS C 6226-1978 ですでに 2区に定義されていた文字です。

2区の文字コード表

NEC特殊文字 (13区)

丸付き数字などは、この13区のNEC特殊文字です。

水色のコード位置の文字は JIS X 0208-1983 で 2 区に追加になった文字と重複しているので注意が必要です。また、灰色のコード位置の文字は 115区の IBM拡張文字の方にも重複して定義されています。

13区の文字コード表

NEC選定IBM拡張文字 (89〜92区)

115〜119区の IBM拡張文字のうち、すでに13区に定義されている文字を除いた文字が、NEC によって 89〜92区に定義されました。

水色で示したコード位置の文字は、JIS X 0208-1983 で 2区に追加された文字と重複して定義されています。

89,90区の文字コード表

91,92区の文字コード表

IBM拡張文字 (115〜119区)

IBMによって115〜119区に追加された漢字と非漢字です。

マイクロソフトが日本語版 Windows 3.1 用の文字セットを作成する際に、JIS X 0208-1990 をベースにして、それまで国内で圧倒的なシェアを誇っていた NEC PC-9800シリーズの文字セットとの互換性と、IBM のマシンの両方との互換性を考えて、同じ文字が重複して定義されている 89〜92区と、115〜119区 の両方を含めたものと思われます。

水色で示したコード位置の文字は、JIS X 0208-1983 で 2区に追加された文字と重複して定義されいて(∵に関しては13区、¬に関しては92区にも定義されています)、灰色で示したコード位置の文字は 13区と重複して定義されています。たの色無し (白色) のコード位置の文字に関しても、今までの説明にあるとおり Windows-31J では 89〜92区と重複して定義されています。

115,116区の文字コード表

117,118区の文字コード表

119区の文字コード表

ユーザー定義外字 (95〜114区)

IANA の Windows-31J の登録内容には書かれていませんが、Windows Codepage 932 では、95〜114区 (シフトJISで 0xF040〜0xF9FC) をユーザー定義外字の領域としていて、ユーザーが外字エディタで外字を定義して使ったり、市販の外字フォントで人名用の字形や印刷などに用いる記号などを使えるようになっています。

関連規格・参考文献・資料等

JIS規格票の閲覧・購入・原案作成機関について


2002年10月12日
新規作成
2003年8月21日
修正:ユーザー定義領域の範囲を (誤) 85〜114区としていたのを (正) 95〜114区 と修正。ご指摘ありがとうございます。

作成者 森山 将之


ホーム > Windows-31J 情報 > Windows-31J の文字セット