title

Top  >> Vine Linux Menu  >> その他  >> 文字コード

文字コード

 文字データの表現

 コンピュータで文字を扱う場合には、それぞれの文字に2進数をコード(符号)として割り当てます。 どの文字にどのようにコードを割り当てるかは規格化されていて、文字コードは英数字や記号などを使う扱う1バイトコードと、日本語などを扱う2バイトコードに大別されます。 次に、文字コードの種類をまとめた表を示します。

文字コードの種類
サイズ 文字コード名 概要
1バイト EBCDIC コード 汎用コンピュータの標準である8ビットコード
ASCII コード 英数字、記号、制御コードを表す7ビットコード
ISO コード ASCII をもとにした国際規格の7ビットコード
JIS コード ISO コードをもとにした半角文字コード
JIS7単位符号:ISO コードをほぼ同じ内容
JIS8単位符号:半角カタカナを追加
2バイト JIS 漢字コード 英数字、記号、ひらがな、カタカナ、漢字を含む16ビットコード
シフトJIS コード JIS 漢字コードの表現領域をずらした16ビットコード
Unicode 世界中の文字を2バイトで表す国際規格の16ビットコード
マルチバイト 日本語EUC UNIX で使用される1〜3バイトのマルチバイトコード

・ EBCDIC(Extended Binary Coded Decimal Interchange Code:拡張2進化10進コード)
IBM 社が自社用の汎用コンピュータのために開発したコードで、1960年代〜70年代はIBM 社が汎用コンピュータ市場の大半を占めていましたために当時のデファクトスタンダードでした。 このような流れもあり、現在の汎用コンピュータでも世界標準の文字コードになっています。
・ ASCIIコード(American Standard Code for Information Interchange)
1962年にANSI(American National Standard Institute:米国規格協会)が制定したコードで、7ビットのコードに誤りを検出するパリティ用のビットを加えた8ビットで構成されています。
・ JISコード(Japan Industrial Standard:日本工業規格)
ISO コードをもとにした日本の工業規格で、1バイトで表現するJIS コード(JIS X0201)と、2バイトで表現するJIS 漢字コード(JIS X0208)があります。
・ シフトJIS コード
Microsoft 社によって考案されたコードで、コードが重複するというJIS 漢字コードの問題を解決したものです。 Windows やMac OS の標準的な文字コードです。
・ Unicode
情報の国際化のために全世界の文字を2バイトに割り当てたコードで、現在では広く普及しています。
・ 日本語EUC(Extended UNIX Code)
UNIX で日本語文字を扱うためのコードで、4つの文字コードセットから成ります。 このうち、1バイト目の値で扱い方を切り替える事でJIS コードとの互換性を持ちます。

 Web サーバのOS の文字コードと、ファイルに含まれる文字コードが異なる場合は、文字化けの原因になります。 Web ブラウザでは、自動選択機能でHTML Web ページの文字コードを判別しますが、異なる文字コードのWeb ページを交互に開いたりHTML の<meta>タグで文字コードが明示的に指定されていない場合には、文字化けが発生する事があります。


このページのTop へ

 改行コード

 文字コードはOS によって異なると同時に、改行コード(テキストファイル中で改行を意味する文字コード)も異なります。 次に、各OS の文字コード及び改行コードの種類をまとめた表を示します。

文字コードと改行コード
OS 文字コード 改行コード 改行コードの大きさ
Windows シフトJIS CR+LF 2バイト
Mac OS シフトJIS CR 1バイト
Mac OS X EUC LF 1バイト
UNIX EUC LF 1バイト

 表のように、Windows の改行コードは他のOS の改行コードが1バイトである事に対して、2バイトと大きいです。 例えば、FTP でHTML ファイルをサーバにアップロードした事がある人は、ローカル側とサーバ側でファイルのサイズが違う、といった事を経験したと思います。 これは改行コードが各OS で異なるので、Windows の方が数バイト大きくなって見えるという訳です。


このページのTop へ