...

20160510 文字.pages

by user

on
Category: Documents
7

views

Report

Comments

Transcript

20160510 文字.pages
マルチメディアシステム論 資料 (2016.5)
マルチメディアと文字 (1)
1 情報通信と文字
2 文字コードの種類
文字集合(常用漢字,日本で使われる文字,韓国で使われる文字などを「文字集合」という)は特定の
「符号化方式」でバイナリコードに割り当てられる。これを文字コードといい,この集合を「符号化文字集
合」という。
日本で使われる文字コードの代表的なものは以下のとおり:
JIS 8bit コード / JIS漢字コード / シフトJISコード / EUCコード / Unicode
2.0 JIS 8bit コード表
2.1 JIS 16bit 漢字コード
(1) JIS X 0208:1997 6,879字 (JIS X 0208-1990 ← JIS C 6226-1978)
「7ビット及び8ビットの2バイト情報交換用符号化漢字集合」
第一水準: 漢字2,965+非漢字524字(ひらがな,カタカナ,記号等を含む。基本的に「音読み」順)
第二水準: 漢字3,390字(人名によく使われる字体等,部首・画数順)
(2) JIS X 0213:2004 11,233字
「7ビット及び8ビットの2バイト情報交換用符号化拡張漢字集合」
(1) に加え,
第三水準: 漢字1,259字
第四水準: 漢字2,436字+非漢字659字(丸数字などを含む)
(参考)
1/4
マルチメディアシステム論 資料 (2016.5)
JIS拡張漢字(JIS X 0213:2004)(全コード表)
http://www.asahi-net.or.jp/ ax2s-kmtn/ref/jisx0213/
(3) 区点コード
※区点コードとはバイナリデータをマッピングする表現方法で,符号化方式ではない。
JISコードの各バイトは 0x21∼0x7e までの94種類のいずれかになる。(7bit 表現で「制御文字」(0x00∼
0x20, 0x7f) を除いた値)。文字コードは 2 バイトなので,94(区) 94(点)(=8,836文字分)のいず
れかに文字コードがマッピングされる。この表現方法を「区点コード」という。
JIS X 0213 では,上記だけでは間に合わなくなったので,区点コードに「面」という概念を加え,
「面」「区」「点」で文字コードを表現している。具体的には JIS X 0208 と第三水準が第1面に,第四水
準が第2面にマッピングされている。
(4) エスケープシーケンス
JIS 16 ビットコードと, ASCII コードなど他の符号化方式の文字コードは,そのままでは混在させるこ
とができない。たとえば,全角文字Aは,JIS コードでは 0x2341 であるが,半角文字 # は 0x23, A は
0x41 なので,両者を混在させるには「符号化方式を切り替える」仕組みが必要になる。
これを実現したのが「エスケープシーケンス」で, JIS コードでは以下のシーケンスが定義されている。
[ESC](B
[ESC](J
[ESC]$@
[ESC]$B
[ESC]$(Q
[ESC]$(P
ASCII
JISローマ字
JIS-1978
JIS-1983
1面の漢字集合
2面の漢字集合
2.2 Unicode
ISO で制定された UCS (Universal multi-octet coded Character Set) の2バイト方式 (UCS-2) とほぼ
同じコード。2バイトなので,最大 65,536 文字を割り当てられる。各国の文字を「ユニフィケーション」
で合わせたこともあり,ソート順については保証されていない。 UCS には UCS-4 という 4バイトで文字を
マッピングするコードもある。
(1) UTF (UCS Transformation Format)
Unicode の符号化方法。(RFC2279, RFC2781で定義)
UTF-16 は UCS-2のほか, UCS-4 の文字も扱えるように拡張された符号化方法。1文字2または4byte。
UTF-8 は ASCII 文字はASCIIコードと同じ,それ以外の文字は可変長バイト(1-6byte)に符号化される。
UTF-32 はすべての文字を4バイトで表す。
3 文字に関わる問題点
・文字コード表の違い
・改行コード
・メタレベルのコード指定
[演習]
0 使用アプリケーション(Windows でのほぼ等価なアプリケーション例)
テキスト・エディタ: mi (TeraPad)
テキスト・エディタ: テキストエディット(ワードパッド?)
バイナリ・エディタ: 0xED(String)
2/4
マルチメディアシステム論 資料 (2016.5)
1. ホームディレクトリに 'moji-sample' という名前で新しいフォルダを作り,テキストエディタ mi を
使って,以下の内容のファイルを保存する。(ホームディレクトリ上,右クリックで「新規フォルダ」)
0123456789+-*/!
ABCDEFGHIJKLMNO
abcdefghijklmno
あいうえお
福島123大学abc
2. 文字コードは Shift_JIS,改行コードは以下のものに変更して,指定したファイル名で保存しなさい。
moji-sjis-lf.txt
LF(UNIX)
moji-sjis-cr.txt
CR(Mac)
moji-sjis.crld.txt CR+LF(Windows)
3. 改行コードは LF(UNIX),文字コードは以下のものに変更して,指定したファイル名で保存しなさい。
moji-jis-lf.txt
ISO-2022-JP
moji-euc-lf.txt
EUC-JP
moji-utf8-lf.txt
UTF-8
4. 保存したテキストファイルを 0xED で開き,以下の項目を調べなさい。
何バイトのテキストファイルか。
ファイルの大きさが異なる原因は何か。
5. Webブラウザ Safari で,以下の URL を開き,各リンク先を表示なさい。
http://isl.sss.fukushima-u.ac.jp/ shinoda/jugyou/87126/2015/siryou/20150512/moji-sample/
いわゆる「文字化け」はなぜ起きるのか。
(課題)
1. 日本で使われている文字コードについて,その特徴を調べなさい。
2. 「明朝体」「ゴシック体」など,実際の場面では,文字コードだけでは区別できない表現方法がある。
どのような表現方法があるか調べなさい。
(参考)
日本語と文字コード
http://www.kanzaki.com/docs/jcode.html
日本の文字コード
http://www.asahi-net.or.jp/ ax2s-kmtn/character/japan.html
JIS X 0213の代表的な符号化方式
http://www.asahi-net.or.jp/ wq6k-yn/code/enc-x0213.html
Unicode 6.0 Character Code Charts
http://www.unicode.org/charts/
3/4
マルチメディアシステム論 資料 (2016.5)
付録
1. テキストエディタ mi の簡単な使い方
文字コード,改行コードの設定
保存ダイアログの拡張(「名前」右の▲をクリック)
2. 0xEDの簡単な使い方
幅を16バイト境界に合わせると見やすい。下ペインで文字を表示するときは文字コードを合わせる。
4/4
Fly UP