6月7日(金)1コマ目

今日、やったこと

文字コード

今日のホワイトボード

前回のおさらい

ASCII、JIS X 0201は文字集合+符号化方式。

図 ASCII、JIS X 0201

[文字集合]JIS X 0208

JIS X 0201はASCII+半角カタカナ。

これに全角文字(ひらがな、カタカナ、漢字(第1水準、第2水準))を追加。

文字は区・点で特定できる。区点は符号化方式ではないので注意

図 JIS X 0208

[文字集合]Unicode

世界中の文字を収めた文字集合。

文字はUnicode符号位置で特定できる。Unicode符号位置は符号化方式ではないので注意

図 Unicode

[文字符号化方式]Shift_JIS

符号化対象文字は

  • JIS X 0201
  • JIS X 0208

JIS X 0201は互換性のため、同じ方式で符号化。よって1文字1バイト長。

JIS X 0208は文字数が多いため1文字2バイト。

図 Shift_JIS
亜種(CP932、Windows-31J)も含めてWindowsOSで利用されている。

[文字符号化方式]EUC-JP

符号化対象文字は

  • JIS X 0201
  • JIS X 0208

JIS X 0201中のASCIIの文字はは互換性のため、同じ方式で符号化。よって1文字1バイト長。

JIS X 0201中の半角カタカナは1文字2バイト。1バイト目(上位)は0x8Eで固定。2バイト目(下位)JIS X 0201で符号化した値。

JIS X 0208は区・点にそれぞれ0xA0を足す。1文字2バイト。

図 EUC-JP

UNIX系OS(Linuxも含む)で使われている。MacOSもUNIX系OSだが、Shift_JISを使っている模様。


EUC-JPで符号化

スライドNo. 41

図 EUC-JPで符号化(スライドNo.41)

スライドNo. 42

図 EUC-JPで符号化(スライドNo. 42)

[文字符号化方式]UTF-8

対象文字はUnicode。

1文字1バイト(ASII文字)から2バイト、3バイトと可変長。

図 UTF-8で符号化


図 UTF-8で符号化
符号化する際、先頭に"10"、"110"、”1110”を挿入するのは何バイトの文字か判定するため。

次回は

文字コードのテストをします。

このブログの人気の投稿

6月14日(金)1コマ目

5月31日(金)1コマ目