日本語文字コード


日本語文字コードの種類

コンピュータは主にアメリカで開発されてきたこと、また、初期のコンピュータではほんの少量のメモリしか使うことができないなどの理由で文字は 7bit で表現されてきました。7bitで扱うことのできる文字は 127 種類です。しかしながら、日本語にはひらがな、カタカナ、漢字といった大量の文字があります。これらの文字を扱うために、コンピュータ上ではさまざまな方法を用いて、日本語を表現しています。
初期のコンピュータでは、まず日本語の文字の中からカタカナを扱えるようにしました。これがいわゆる「半角カタカナ」といわれる文字です。この半角カタカナを扱える文字コードには があります。
その後、コンピュータの性能向上や、扱えるメモリの増大により、ひらがな、漢字をコンピュータ上で扱えるようになりました。
現在、漢字を含む日本語を扱うのに使用されている文字コードは主に次のコードがあります。

ASCII/JIS ローマ字コード

ASCII(American Standard Code for Information Interchange)コードは 1963年に ANSI (アメリカ規格協会)により制定されたコードです。JISローマ字はASCII コードを補完する形でカタカナを定めています。
コード表は次のようになります。

下4bit
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F

4bit
0
NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI
1
DLE
DC1
DC2
DC3
DC4
NAK
SYN
ETB
CAN
EM
SUB
ESC
FS
GS
RS
US
2
SP
!
# $ % & ' ( ) * + , - . /
3
0 1 2 3 4 5 6 7 8 9 : ; < = > ?
4
@ A B C D E F G H I J K L M N O
5
P Q R S T U V W X Y Z [ \ ] ^ _
6
` a b c d e f g h i j k l m n o
7
p q r s t u v w x y z { | } ~ DEL
8
















9
















A

B
ソ
C
D
E
















F

















JIS

JIS コードは日本工業規格協会で制定されたコードで、現在では主に JIS X 0208-1990 と JIS 0212-1990 という二つの規格を指します。JIS コードは一部を除いて 7bit または 8bit の1バイト文字(半角カタカナ)文字と上下バイトとも16進数で 21 - 7E の範囲にある 2 バイト文字で構成されています。

下位バイト
00 10 20
30
40
50
60
70
80
90
A0
B0
C0
D0
E0
F0
上位
バイト
00
















10
















20
















30
















40
















50
















60
















70
















80
















90
















A0
















B0
















C0
















D0
















E0
















F0
















使用領域

未使用領域

JIS コードは OS, アプリケーションプログラムの中で素のままで使用されることはほとんどありません。前述したとおり、JIS コードは7bit のコード体系であり、使用するのに シフトイン、シフトアウトといった制御文字を使用しなければならず、扱いが煩雑になるためです。
しかしながら、電子メール、ニュースなどのインターネット上の通信では、ISO-2022-JP という JIS コードから派生したコードが広く使用されています。

シフトJIS

シフト JIS コードは マイクロソフト、アスキーによって制定された文字コードです。日本語 MS-DOS で採用されたことから、MS-DOSの普及により、広く利用されるようになりました。MS-DOS,MS-Windows Me までの 16 bit ウィンドウズ系列のOS、AppleMacintosh など、パソコンで広く利用されています。
シフト JIS コードは、2 バイト固定の文字コードで、それまで広く利用されていたいわゆる半角カナ文字との互換性を非常に重視しています。そのため、2バイトのコードの第1バイト目を割り当てているコードが制御文字および半角カナを避けて決められています。

下位バイト
00 10 20
30
40
50
60
70
80
90
A0
B0
C0
D0
E0
F0
上位
バイト
00
















10
















20
















30
















40
















50
















60
















70
















80


















90


















A0
















B0
















C0
















D0
















E0


















F0

















EUC

EUC は Extended Unix Code の略で、主に UNIX 系の OS で使用されています。EUC 自体は日本だけでなく、韓国語、中国語なども制定されています。また、EUCにも圧縮 EUC(可変長)、2 バイト固定 EUC、などの種類があります。広く使われているのは圧縮 EUC です。 ここでは通常使われている圧縮EUC について解説します。
EUC は 1 バイトから 4 バイトの文字を使用することができます。それらの文字はコードセットというコード空間上の領域を割り当てられています。


第1種
第 2 種
第 3 種
コードセット 0
21 - 7E


コードセット 1 A0 - FF
A0 - FF + A0 - FF
A0 - FF + A0 - FF + A0 - FF
コードセット 2 8E + A0 - FF
8E + A0 - FF + A0 - FF
8E + A0 - FF + A0 - FF + A0 - FF
コードセット 3 8F + A0 - FF
8F + A0 - FF + A0 - FF
8F + A0 - FF + A0 - FF + A0 - FF
強調表示されている部分が、日本語の圧縮EUCで用いられている領域です。それぞれ ASCII/JIS ローマ字、JIS X 0208-1990、JIS X 0212-1990 の各コードが割り当てられています。
[覚書][トップページ]