1 2013年度 春学期 情報基礎 ICT Foundation コンピュータにおける情報の表現 (2) Copyright © 2010, IT Gatekeeper Project – Ohiwa Lab. All rights reserved. 2 目次 • • • • • 文字の表現 アナログとデジタル 音のデジタル化 画像と動画のデジタル化 情報圧縮 3 ICT Foundation 文字の表現 Copyright © 2010, IT Gatekeeper Project – Ohiwa Lab. All rights reserved. 4 文字を2進数で表現する • コンピュータは文字データを扱うことができる ▪ 例えば,以下のように文字を2進数に対応付け(マッピング) すれば,文字を2進数として扱うことができる 文字 A B C D 2進数 00 01 10 11 ※ 実際にコンピュータで使われているマッピングとは異なります ▪ 文字などの情報をコンピュータで処理できる符号(2進数の ビット列)で表現しなおすことをコード化(符号化)という ▪ 文字と符号の対応を表現した表を文字コード表という アルファベットの符号化 ASCIIコード • ASCIIコード ▪ 文字情報を7桁の2進数に符号化 • 上側の0~7の16進数は上位3ビット,左側の0~Fの16 進数は下位4ビットを表現(例:A=41(16)=1000001(2)) ▪ CRやDEL等はコンピュータに特定の機能を実行さ せる役割が割り当てられた機能コード • BS(Back Space)は「一文字後退」 • CR(Carriage Return)は「行頭復帰(カーソルを,カーソ ルが位置する行の先頭に移動させる)」 ▪ 日本語はもっと多くの文字があるので,7ビットでは 表現できない 5 6 ASCIIコード表 0 1 2 3 4 5 6 7 0 Null DLE 空白 0 @ P ` p 1 SOH DC1 ! 1 A Q a q 2 STX DC2 " 2 B R b r 3 ETX DC3 # 3 C S c s 4 EOT DC4 $ 4 D T d t 5 ENQ NAK % 5 E U e u 6 ACK SYN & 6 F V f v 7 BEl ETB ' 7 G W g w 8 BS CAN ( 8 H X h x 9 HT EM ) 9 I Y i y A LF SUB * : J Z j z B VT ESC + ; K [ k { C FF FS , < L ¥ l ¦ D CR GS - = M ] m } E SO RS . > N ^ n ~ F SI US / ? O _ o DEL 日本語の符号化 (マルチバイトコード系) • 漢字を含む日本語は65536通りを区別できる16ビット (2バイト)以上の2進数で表現する ▪ JIS X 0208という規格で,計6879個の文字(ひらがな,カタ カナ,漢字など)が規定されている • よく使われているJIS X 0208に基づいた符号化方式 は以下の3種類 ▪ ISO-2022-JP(JIS)・・・電子メールで主に使われている ▪ Shift_JIS・・・Windowsをはじめ多くのパソコンで使われて いる ▪ EUC-JP・・・Unixで主に使われている 7 8 Unicode • 世界中の主要な言語の多様な文字を1つの文字コー ド体系で取り扱い,多言語表記を可能にする ▪ JIS X 0208に基づくShift-JISやEUC-JPは日本専用 ▪ 全世界の文字を16ビットで表現しようと開始された • 符号化方式としては以下のようなものがある ▪ UCS-2,UCS-4 ▪ UTF-7,UTF-8,UTF-16,UTF-32 • 公式ホームページ:http://unicode.org 中国語や日本語,韓国語で使われる漢字で字形が似て いる文字を同一とみなす(統合作業)などの問題点もある 【演習1】 Webブラウザで文字化けを体験してみよう • 意図的に文字化け(文字が意味不明な記号に置き換わって表 示されてしまう現象)を発生させてみましょう ▪ 1. Webブラウザを起動する ▪ 2. 適当なページを表示させる ▪ 3. Webブラウザが解釈する文字コードを変更する • Webブラウザする文字コードの変更方法 ▪ Safariの場合 • 表示メニュー → テキストエンコーディング ▪ Firefoxの場合 • 表示メニュー → 文字エンコーディング • なぜ文字化けが起こるのか考えてみましょう 9 10 ICT Foundation アナログとデジタル Copyright © 2010, IT Gatekeeper Project – Ohiwa Lab. All rights reserved. 11 アナログとデジタル • アナログ ▪ ▪ ▪ ▪ 「相似」が語源 情報を連続的に変化として表すことをアナログという 数値で表現しようとすれば,無限の精度が必要 アナログ時計,天秤ばかり • デジタル ▪ 「指」(→指で数える)が語源 ▪ 情報を不連続な変化として表すことをデジタルという ▪ お金の額,デジタル時計 12 アナログ表現とデジタル表現 • 時間 ▪ アナログ時計・日時計 • 時間の流れを連続的に変化する針の角度で表す ▪ デジタル時計 • 時間を1秒あるいは1分といった(離散的な)数値で表す • 体温 ▪ 水銀式 • 体温を連続的に変化する水銀柱の長さで表す ▪ デジタル式 • 体温を一定の刻みの(離散的な)数値で表す 13 デジタルは雑音に強い • 数値を電圧値で表すアナログ表現によって送信する と,途中で雑音の影響をうけて,もとの情報を再現で きない • 数値を電圧の高い低いのみで表現するデジタル表現 で送信すると,もとの情報を再現しやすい アナログ表現 0 波形がひずむ もとの波形を 復元しやすい 10 1 デジタル表現 波形がひずむ もとの波形を 復元できない 0 1 9? 10 ? 11 ? 1 ? 0 1 0 14 デジタルは複製と加工がしやすい • 複製しても劣化しにくい ▪ デジタル表現は雑音に強いため,複製しても劣化しにくい ▪ アナログ表現の情報は雑音の影響を受けやすく,複製をす るたびに劣化していく ▪ 複製が簡単に作れることは著作権の侵害に結びつく ▪ 例:コピーしたものを繰り返してコピー機にかけると,字が読 めなくなる • 加工が容易 ▪ デジタル表現は数値列に変換できるので,コンピュータを使 えば,容易に加工できる ▪ 例:デジカメの画像の色調補正はコンピュータを使うと簡単 15 ICT Foundation 音のデジタル化 Copyright © 2010, IT Gatekeeper Project – Ohiwa Lab. All rights reserved. 16 音と波 • 音は空気の振動が伝わっていく現象 ▪ 周波数:1秒間に含まれる波の数,単位はHz ▪ 周期:1個の波が伝わる時間,単位は秒 時間 電圧 周期 CDの表面の電子顕微鏡写真(明星大学物性研究センター) http://msrc.amrc.meisei-u.ac.jp/modules/myalbum/photo.php?lid=17 • 音楽CDは音声を表面の凹凸を使ってデジタル表現として記録 している • 音をデジタル表現にするためには,変換作業が必要 17 アナログ・デジタル変換1 • 標本化(Sampling) ▪ 波形を時間軸にそって分割し,各点での波高値を 有限桁の実数値として読み取る ▪ 読み取った波高値を標本値という ▪ 例:音楽CDは44.1kHz,電話は8kHz • 量子化(Quantization) ▪ 標本値を整数値で近似する ▪ 例:音楽CDは16bit,電話は8bit • 符号化(Encoding) ▪ 整数で近似した整数値を2進数に置き換える 18 アナログ・デジタル変換2 10 5 0 標本化 7.23… 8.16… 7.52… 4.62… 2.91… 3.35… 量子化 7 8 7 4 3 3 11 11 符号化 111 1000 111 100 • 元の波形を完全に再現する ことはできない • 標本化を細かく行い,量子 化の単位を小さくすれば, 近似の精度は上がるが,情 報量は増す • 変換の際には品質と情報量 の増加の兼ね合いを考慮 する必要がある(一方を立 てれば他方が立たないとい う関係をトレードオフと呼 ぶ) 19 ICT Foundation 画像と動画のデジタル化 Copyright © 2010, IT Gatekeeper Project – Ohiwa Lab. All rights reserved. 20 ビットマップ(ラスター)画像1 • 画面の隅から一定間隔で水平方向に,濃度や色の情報を有 限桁の実数値として読み取る(標本化) • 読み取った数値を整数値に置き換え(量子化) • 整数値に置き換えた数値を2進数に変換する(符号化) A B C D 画素A 画素B 画素C 画素D 6.23… 4.16… 3.52… 3.62… 標本化 画像を升目に区切って 濃度や色を数値化 量子化 画素A 画素B 画素C 画素D 6 4 3 3 符号化 画素A 画素B 画素C 画素D 110 100 11 11 21 ビットマップ(ラスター)画像2 • 拡大すると画像の縁がぎざぎざになったり,ぼ やけたりする問題がある 22 ベクトル画像 • 画像を構成する曲線や直線を,始点と終点,それらを 結ぶ線の種類など,幾何学的定義によって表現する • 拡大・縮小によっても細部や鮮明さが失われることが ない Adobe Illustrator サンプルより 23 動画のデジタル化 • 動画の記録や再生は人間の目が持つ性質を利用し ている ▪ 映画は1秒間に24コマ,テレビは30コマの静止画として動き を記録する(パラパラ漫画の原理と同じ) ▪ それぞれのコマをデジタル化する ▪ 例:地上波デジタル放送によって,伝送時の雑音が原因で あるゴーストが無くなり,画質が向上する 社団法人 地上デジタル放送推進協会 http://www.d-pa.org/ 24 ICT Foundation 情報圧縮 Copyright © 2010, IT Gatekeeper Project – Ohiwa Lab. All rights reserved. 25 情報圧縮 • 符号化などの方法を工夫して,通常よりも少ないデー タ量(ビット数)で同等の情報を表現する手法 • 可逆圧縮 ▪ 圧縮したものから元の情報を完全に復元できる方法 ▪ 例:PNG,GIF(256色までしか扱えないので写真には適さ ない),ZIP • 非可逆圧縮 ▪ 圧縮したものからもとの情報を復元できない方法 ▪ 例:JPEG,MP3,MPEG(人間の感じ取りにくい部分の データを間引くことによって圧縮するため,間引いた情報は 復元できない) 圧縮の原理1 ハフマン符号化 • 出現確率の大きなものには短いビット列を割り当てる ▪ 一週間の天気(晴れ,雨,雪,くもり)を伝達する場合,4種 類を区別するためには2ビットが必要 • 1週間の天気:晴れ,晴れ,晴れ,くもり,くもり,くもり,雨 • 全てを2ビットで符号化すると,00 00 00 11 11 11 10の14ビット • 出現確率が 晴れ>くもり>雨>雪 なら,晴れ:1 くもり:01 雨: 001 雪:000 と符号化すると,1 1 1 01 01 01 001の12ビット 天気 2ビットで符号化 出現確率によって符号長を変更 晴れ 00 1 雨 01 001 雪 10 000 くもり 11 01 26 圧縮の原理2 ランレングス符号化 • ビット列をビット列の値とその繰り返し回数で表現する ▪ 00011000000011111110000011111000の32ビットのビッ ト列を考える ▪ 繰り返し回数は左から0×3,1×2,0×7,1×7,0×5, 1×5,0×3となる ▪ 繰り返し回数が7以下なら繰り返しの回数は3ビットで表現 でき,011 010 111 111 101 101 011の21ビット列に圧縮 できる ▪ 0と1が交互に現れるとすれば,各部分の値(0か1)は省略 できることに注意 ▪ 8回以上の繰り返しは,値が異なるビットが0回繰り返された とすればよい(0が12回繰り返されたら,0×7,1×0,0×5 として,111 000 101) 27 【演習2】 漢字を伝達してみよう1 • 自分の名前から,一文字漢字を選ぶ ▪ 例えば,慶應太郎なら,「太」を選ぶ ▪ あまり複雑な文字を選ばないのがコツ • 異なる2人に異なる方法で漢字を伝達する ▪ 1人目:文字コードによって伝達する ▪ 2人目:白黒のビットマップ画像で伝達する • それぞれに必要な情報量を考える 28 【演習2】 漢字を伝達してみよう2 • 文字コードの調べ方 ▪ 自分が利用する文字コード表が掲載されている Webページにアクセスする • • • • Shift-JIS:http://charset.7jp.net/sjis2.html EUC:http://charset.7jp.net/euc2.html JIS:http://charset.7jp.net/jis2.html Unicode(UTF-16BE): http://charset.7jp.net/unicode2.html 29 【演習2】 漢字を伝達してみよう3 • 文字コードの調べ方(続き) ▪ commandキーとfキーを同時に押すと,Webブラウザの検 索機能を利用する ▪ Safariはウィンドウの上,Firefoxはウィンドウの下に検索用 のツールバーが表示される Safariで太を検索した場合 30 【演習2】 漢字を伝達してみよう4 • 白黒ビットマップ画像による伝達 ▪ 白を0,黒を1で表現し,左から順番に走査してビッ ト列に変換する ▪ ランレングス符号化で圧縮して送信できるかも考え てみましょう 000010000000010000111111111 000010000000111000001000100 010010010100001001000000000 31
© Copyright 2024 Paperzz