300 likes | 374 Views
第3章 情報とその伝達. § 1 情報の符号化 § 2 情報源の符号化 § 3 情報量とエントロピー § 4 情報の伝達 § 5 符号理論と暗号. § 1 情報の符号化. 情報の符号化. コンピュータ内部の情報処理は論理回路で行われる 従って、コンピュータ内部では、すべての情報はビット(0又は1)の組み合わせで表現されている必要がある 情報をビット列に変換することを符号化という. 1ビット=2進数に符号化されたデータの一桁. 外部記憶装置. PC の主要構造. ハードディスク. CPU. DVD ドライブ. FD ドライブ. バス (BUS).
E N D
第3章 情報とその伝達 §1 情報の符号化 §2 情報源の符号化 §3 情報量とエントロピー §4 情報の伝達 §5 符号理論と暗号
情報の符号化 • コンピュータ内部の情報処理は論理回路で行われる • 従って、コンピュータ内部では、すべての情報はビット(0又は1)の組み合わせで表現されている必要がある • 情報をビット列に変換することを符号化という 1ビット=2進数に符号化されたデータの一桁
外部記憶装置 PCの主要構造 ハードディスク CPU DVD ドライブ FD ドライブ バス(BUS) I/Oポート 主記憶装置(メイン・メモリ)
外部記憶装置 • FD(フロッピーディスク) • 磁性体のディスク(円盤) • N極・S極の向き⇔{0, 1}に対応 • HD(ハードディスク) • 磁性体を蒸着したアルミ製ディスク • ハード=硬い • N極・S極の向き⇔{0, 1}に対応 • CD・DVD • レーザー光の反射の量⇔{0, 1}に対応
なぜビット(2進数)なのか?(1/2) • なぜ2進数か?3進数・4進数…ではないのか? • 記憶素子数の最適化 • r進数⇒r種類の符号が必要例:10進数 • ⇒ {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}の10種類の数字が必要 • 従って、r進数のn桁の数字を表現するためには、 M=nr (1) • の記憶素子数が必要 • r進数のn桁の数字が表現できる数字の大きさ(種類)Q=rn(2) • (1)式(2)式からnを消去すると • M=r log Q / log r • Qを留めてMを最小化するrはr=e(自然対数)=2.718… • 従って3進数(r=3)が一番最適。2進数(r=2)・4進数(r=4)がそれに続く
なぜビット(2進数)なのか?(2/2) • なぜ2進数か? • 2.信頼性 • 電子回路では電圧がある・なしの2値状態の判別が一番信頼できる • 記憶装置の磁石の向き(右・左)も同じ • 3. 四則演算が容易 • 2進数同士のかけ算=桁をずらす操作(シフト)
(3)10 + (5)10 (8)10 (0011)2 + (0101)2 (1000)2 数の符号化(1/6) • 10進数⇒2進数 • 10進数=10で桁上げ • 2進数=2で桁上げ • 2進数で演算(論理回路を使う) • 2進数⇒10進数
数の符号化(2/6) 2進数 2で割った商と余り 2で割った商と余り 10進数⇒2進数 (i)2で割った余りを下の桁の値に (ii)商がゼロでなければ更に2で割る (iii)以上を繰り返す 2進数⇒10進数 (111)2=(100)2+(010)2 +(001)2 =22+2+1=7
数の符号化(3/6) 問題:5本の指で数を表現することを考えよう。各指の使い方は、伸ばした状態か、折り曲げた状態かのどちらかしかないとする。表現できる数はゼロから最大いくつまでか?
数の符号化(4/6) 小数の2進数表現 (0.1)10=1/10, (0.01)10=1/100, (0.001)10=1/103と同じく (0.1)2=1/2, (0.01)2=1/22, (0.001)2=1/23等とする • (注)10進数で有限小数であっても2進数では循環小数になることがある • 例: (0.4)10=(0.01100110011…)2 • 従って、一端2進数にして計算するコンピュータの計算には誤差を含んでいることになる
数の符号化(5/6) 補数表示(負の数の表現法)
0101 (510) +) 1110 (-210) 10011 (310) 数の符号化(6/6) 補数表示を使った減算 • 減算=負の数の和(例)5-2 =5+(-2) -2の補数表現 桁あふれは気にしない
文字の符号化(1/5) 下図のように、文字を符号化する(ビット列に対応させる)のに何ビット必要か?
文字の符号化(2/5) 2<22<23<24<25<26<27(=128)<135<28(=256)
文字の符号化(3/5) 1bit=2進数に符号化されたデータの一桁 ところが、1bitは文字データの単位としては小さ過ぎる そこで、新しい単位が導入された • 1B(バイト)=符号化された英文1文字の長さ(=8ビット) • 2B(バイト)=符号化された日本語1文字の長さ(=16ビット) (注)16ビットは、256×256(=65536)通りの場合が表現可能
文字の符号化(4/5) 演習:以下の測定実験を行いファイルの大きさが正しく評価できることを確認しなさい。 • 「メモ帳」(エディタ) 1行だけのファイルのデータ量(何バイト?) 2行あるファイルのデータ量(何バイト?) 3行あるファイルのデータ量(何バイト?) • 「Word」(ワープロ) 上と同じ文字数のファイルを作成しデータの大きさを比較せよ 英文1文字=1バイト、和文1文字=2バイト
文字の符号化(5/5) 大きな文字データを表す場合の単位 1024 バイト=1Kバイト (K:キロ) 1024Kバイト=1Mバイト (M:メガ) 1024Mバイト=1Gバイト (G:ギガ) 1024Gバイト=1Tバイト (T:テラ) 問い 1,000,000バイトは何Mバイトか? 答え 約0.954Mバイト
アナログ情報の符号化 • アナログとデジタル • 指針のある時計 v.s デジタル時計 • レコード v.s CD(Compact Disk) • 変化するアナログ量の符号化 • 音声・画像の符号化 • 標本化 ↓量子化 ↓符号化 15 10 5 標本化 8.5 13.5 4.7 7.9 量子化 91458 符号化 1001 1110 0101 1000
「ペイント」の図形情報(1/3) (作業) (1)図形(例えば、円)を描く (2)「表示」メニュー「拡大」「拡大する」 (3)「表示」メニュー「拡大」「グリッドを表示」 ペイントで描く図形の情報 =「方眼用紙に色を付ける」方法 (ビットマップ方式・ラスター方式) 他の例:テレビ・デジタルカメラ・スキャナー 用語:ピクセル(画素)=方眼用紙の升目
「ペイント」の図形情報(2/3) (作業) (1)「変形」メニュー「キャンバスの色とサイズ」を実行し、キャンバスの縦幅と横幅をピクセル単位で指定する (2)「ファイル」メニュー「保存」を実行し、 「ファイルの種類」をビットマップ形式にして、適当なファイル名前で画像を保存する (3)ファイルのプロパティを見ることにより、ファイルのデータ量を確認する (4)1ピクセル当たりのデータの大きさを確認する (注)1ピクセル当たりのデータの大きさ =ファイルの大きさ ÷(縦幅(ピクセル単位)×横幅(ピクセル単位))
「ペイント」の図形情報(3/3) = 表現できる 色の種類 1ピクセル当たりの データの大きさ
符号化のまとめ • 数字・文字・画像・音楽etcが符号化によりbitで表現される • コンピュータは元々計算を自動化することを目的として考案・発明された • ところが、10進数ではなく2進数を計算するようになったコンピュータは、数字以外の情報も符号化してしまえばbitとして同じであるため、数字以外の情報を処理できる道具に進化していたのである
さまざまなコミュニケーション • 目的: 考え・認識・感情などの情報をある人から別の人に伝え物事を運ぶ • 方法: 情報を送る人と受ける人との間に通信チャンネル(通信路)設け情報伝送を行う。 例:直接会話、手紙、電話による会話、 FAX、電子メールetc
OR Alice Bob コミュニケーションの危さ 送り手(Alice)の頭の中にあるものがそのまま転送されるわけではない。表現手段により一度別の形態に変換され通信チャンネル(伝送路)を通して送られる。そして、その後受け手(Bob)の中で再構築されなければならない。 "instruction"(=教育)の起源in+struct(=in+build)はまさしくこういう状況を表現している。 通信チャンネル