情報数学1 第3-2章 情報量と二進法での四則演算 香川大学工学部 富永浩之 [email protected] 概 要 ■ 自然数の記数法 位取記数法、多進法と多進法 ■ 多進法の原理 切捨 切上 四捨五入 ガウス記号 ■ 多進数への変換 多進数への変換 ■ 多進数からの変換とホーナー法 多進数からの変換 ■ 多進法の応用 あ ホーナー法 第01節 [1] 情報量と情報量の単位 ● 情報量の単位 ・ 情報量は、その情報の存在により、何通りの異なる状態を区別できるかという尺度 ・ ある状態であるかないか(1か0か)を表すのに必要な情報を最小単位とする ・ これを1ビット[bit]といい、ビットを表す単位記号として、小文字の頭文字 b を用いる ● ビット列 ○ ビット列 0と1の数字の列 010010, 1011 ・ 長さ nのビット列は、 n ビットの情報を表し、 2n 通りの異なる状態が区別される ○ 自由桁二進数 通常の表記の二進数で、0を例外として、他は1から始まるビット列 ○ 固定桁二進数 二進数の先頭に0を追加した表記も許すことにし、桁を揃える n桁の固定桁二進数をnビット二進数ともいう 1011[2]=11[10] は4ビットの情報であり、256 通りの中で11番目の状態を表している。 2ビット二進数の 00[2]=0[10] は、 通りの中で0番目の状態を表している。 第01節 [2] ビットとバイトの単位 8 b (ビット) = 1 B (バイト) 現実の計算機の構造上、8ビット単位でデータ処理が基本 1バイトの情報量は、 2^8=256 通りの情報を区別する。 英数字は、1バイトの情報量があれば区別される。 ハードディスクやメモリの容量は、普通、バイト単位で表す。 8b= 1B 256 16 b = 2 B 65,536 24 b = 32 b = 64 b = 128 b = 3B 4B 8B 16 B 16,777,216 約43億 約1800京 約3.4×10^38 ※ ASCIIコード文字(英数字) 8ビットマイコン 色階調指定 ※ JISコード文字(日本語文字) 16ビットDOS ハイカラー表示 ※ フルカラー表示 ※ 32ビットOS(Windows) IPアドレス ※ 64ビット次世代OS ※ 次世代IPアドレス 第01節 [3] 情報量の上位単位 ○ キロ 1KB = 1024B ※ 原稿用紙1枚と1/4(約500字) ○ メガ 1MB = 1024KB ※ FDの容量 1.44MB(原稿用紙1800枚) ○ ギガ 1GB = 1024MB ≒ 100万KB ≒ 10億B ※ CD-ROMの容量 0.65GB=650MB(FD約450枚) ステレオ音声70分 ○ テラ 1TB = 1024GB ≒ 100万MB ≒ 10億KB ≒ 1兆B ※ ビデオ配信サーバなどの記憶容量(CD約1600枚 DVD約200枚 BD約) ○ ペタ 1PB = 1024TB ≒ 100万GB ≒ 10億MB ≒ 1兆KB ≒ 1000兆B ※ 大規模データベースサーバの記憶容量 ○ エクサ 1EB= 1024PB ≒ 100万TB ≒ 10億GB ≒ 1兆MB ≒ 1000兆KB 第02節 [1] 情報量と文字データ ○ 英字 52個 ○ 数字 10個 ○ 記号 32個 ○ 空白 1個 ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 !?#$%&|\,.;:@'"`^~_+-*/=<>()[]{} 英語圏で必要な文字は、約100個程度 これらの文字を区別するには、27=128 より、7ビットあれば十分 これに、エラーチェック用の1ビットを加えると、 8ビットすなわち1バイトで1文字が表される これが、計算機がバイト単位が基本となっている理由 第02節 [2] 情報量と文字データ 英数字と記号および空白は、ASCIIコード文字と呼ばれる。 俗に、半角文字ということがある。 日本語をには、漢字、ひらがな、カタカナと文字種が多く、 1文字に2バイトが必要である。 これらは、JISコード文字と呼ばれる。俗に、全角文字ということがある。 他の言語でも、2バイト以上必要な文字をマルチバイト文字という。 ● 情報量の概算 日本人約1億2000万人分の電話番号の情報量を概算しよう。 電話番号は最大11桁であり、各桁はBDCでは4ビットで表されるから、44ビットとなる。 よって、120,000,000×44÷8 = 660,000,000B ≒ 660MB であり、CD 1枚程度となる。 電話番号DBとして活用するには、氏名と電話番号の組として収録する必要がある。 氏名の長さは不定であるが、漢字10字以内と仮定すれば、1人につき20バイトとなる。 よって、120,000,000×20 = 2,400,000,000B ≒ 2.4GB であり、DVD 1枚程度である。 第02節 [3] 情報量と画像データ ● モノクロ画像データ ‥ 各画素(画面上のドット)の輝度情報 ○ ○ ○ ○ VGA SVGA XGA SXGA 640 × 800 × 1024 × 1280 × 480 = 307,200 600 = 480,000 768 = 1024 = 計算機のディスプレイ上の画像は、ドット(画素)から構成されている。 各画素に白/黒の1ビットの情報量を割り当てれば、モノクロ二値の画像が表現される。 1画素に8ビットを割り当てれば、黒から白への輝度を256段階の階調として 表現することができる。これをモノクロ階調という。 第02節 [4] 情報量と画像データ ● カラー画像データ ‥ 光の三原色(RGB)の輝度情報の組合せ ○ フルカラー 24ビット(RGB 8,8,8) 約1677万色 ○ ハイカラー 16ビット(RGB 5,6,5) 65536色 ○ 8ビット(RGB 3,3,2) 256色 色彩を表すために用いるビット数を色深度という。 人間の視覚は 緑に対する感度が高く 青に対する感度が低い 第02節 [5] 情報量と画像データ ● 第02-06節 スキャナ画像の情報量 [展開] スキャナでは、解像度の単位として、dpiが使われている。 これは、dot per inch の略であり、1インチ(2.54cm)当たりのドット数を意味している。 例えば、スナップ写真E判(11.7cm×8.3cm)を300dpiの解像度、フルカラー24ビットで取り込むと、 (11.7÷2.54×300)×(8.3÷2.54×300)×24÷8÷1024÷1024=3.88 より 、約4MBの情報量が必要になる。 第03節 [1] 情報量と音声データ ● 音声(音波) ‥ 空気の振動(各時刻の振幅) ○ A/D変換 ○ D/A変換 アナログ波形(振幅量) ⇒ 離散近似 ⇒ デジタル信号 デジタル信号(ビット列) ⇒ 連続補間 ⇒ アナログ波形 ● 音声データの標本化と量子化 ○ 標本化(時間的) ○ 量子化(空間的) 一定時間ごとに振幅量を記録 振幅量を離散値で近似 標本化周波数 量子化ビット数 ● 音声データの情報量 ○ CDの音質 標本化 44,100Hz 量子化 16bit (65536段階) ステレオ2ch (左右) ○ 1秒間 ○ 記録容量 ○ 通信容量 44,100×16×2 = 1,411,200 bit (÷8÷1024)= 172.2 KB 650MB 650×1024÷172.2 = 3865.‥ 秒 ≒ 約64分 1,411,200÷1024÷1024=1.34‥ ≒ 1.4 Mbps 100Mbpの通信回線で74人まで 第03節 [2] 情報量と映像データ ● 動画データの情報量 動画は、定期的な間隔で再生される静止画の列である。 動画の構成要素として再生される静止画をフレームという。 動画データが、アナログかデジタルかは、個々の静止画がアナログかデジタルかによる。 したがって、LDはアナログであり、DVDはデジタルである。 フレームを再生していく間隔すなわち標本化の周波数をフレームレートという。 人間の視覚の残像効果により、1秒間に30コマの割合で、 連続的にフレームを再生すれば、滑らかな動画として認識される。 例えば、320×240サイズで16ビットカラーの静止画データを 1秒間に30コマの割合で再生するとすれば、 1秒間に 320×240×16×30=73,728,000 ビットで、73,728,000÷8÷1024=9 すなわち9MBの情報量が必要となる。 動画の場合、実用的には、人間の視覚特性を考慮した大幅なデータ圧縮が必要となる。 第03節 [3] 情報量と映像データ ● 第03-05節 ○ MPEG-2 マルチメディアデータの標準規格 [参考] DVDの動画データの記録形式 高品位を保ちながら高圧縮 圧縮と解凍に高性能の処理装置を要求(現在は普通のPCでもOK) ハイビジョンのデジタルテレビ放送では、MPEG-2が用いられている。 なお、インターネット上での音声データの標準規格となっているMP3は、 MPEG-2 Layer-3 の略である。すなわち、MPEG-2規格の音声部分のみを利用している。 やや古いメディアであるビデオCDでは、MPEG-1という規格を用いている。 これは、MPEG-2より画質が劣る。 また、インターネットテレビなど、通信容量が低くてもある程度の品質を保ち、 ユーザからの操作を受け付ける双方向的な映像通信では、MPEG-4が採用されている。 なお、Windowsや各種のソフトでは、独自のデータ形式を用いている場合がある。 第04節 [1] 二進法での加法と減法 二進法での加減算は、 各桁同士の計算結果を表す加法表および減法表に基づき、 筆算の形で行う。 加法表・減法表においては、 0-1=-1 のような1桁の数同士の単独の計算結果ではなく、 筆算の途中の各桁において、計算結果として現れる数字と、 繰上り、繰下りの有無を記入しておく。 1 1 1 0 1 1 被加数 + 1 1 0 0 1 1 加数 ↑ 1 1 1 1 繰上り 1 1 0 1 1 1 0 和 1 1 0 1 1 1 0 被減数 + 1 1 0 0 1 1 減数 ↓ 1 1 1 1 繰下り 1 1 1 0 1 1 和 第05節 [1] 二進法での乗法 二進法の乗法 = 乗法表(論理積) + 左桁シフト × 0 1 0 0 0 1 0 1 1 1 0 1 0 1 1 1 1 0 1 1 1 0 1 1 1 0 1 0 1 1 被乗数 ∧ 0 1 0 0 0 1 0 1 × 1 1 1 0 1 乗数 1 0 1 0 1 1 0 1 0 1 0 1 1 ∨ 0 1 0 0 1 1 1 1 乗数の桁が0なら0 左シフトしながらコピー 1 0 1 0 1 1 + 1 0 1 0 1 1 1 0 0 1 1 0 1 1 1 1 1 積 第05節 [1] 二進法での除法 1 0 1 整商 1 0 1 1 1 1 1 1 0 1 被除数 1111≧1011 より商1を立てる 1 0 1 1 1 0 0 0 0 差を求める 1000<1011 より商0を立てる 1 0 0 0 0 1 0 1 1 除数より小となるまで 1 1 0 剰余 第06節 ロシア乗算法と二分累乗法 43 × 29 + 101011 × 11101 43 29 1 101011 1 86 14 0 + 172 7 1 101011__ 100 + 344 3 1 101011___ 1000 + 688 1 1 1247 2倍 43×29 = = = = = 101011____ 10000 10011011111 11101 半分 奇偶 二進数での乗算 43 × 1 1 1 0 1 [2] 43 × (1+4+8+16) 43 + (43×2)×2 + (43×4)×2 43 + 172 + 344 + 688 1247 + (43×8)×2 第07節 整数の記数法 ● 符号付二進数 ‥ 符号桁 + 数値桁 in 固定桁 ・ 整数の記数法には、符号と数値が必要 ・ 符号付二進数では、符号も含め、ビット列(0/1のみ)として整数を表記 ・ 上位桁の0を省略しない、固定長のビット列で考える ・ 最上位での繰上りは、桁溢れ(オーバーフロー)となる ・ 固定桁の最上位桁を符号桁に使う (0 正 1 負) 0 0 0 0 0 0 0 1 正数 1 0 0 0 0 0 0 1 負数 ・ 数値部分は、符号無二進数より1ビット減 (絶対値での範囲が縮小) ・ 正負を含めた範囲は同じ ・ 数値桁の解釈の相違で2通りの方式がある (絶対値表示 / 補数表示) ・ どの方式も自然数の表記は、符号無二進数と同じ ・ 符号付二進数として、通常は補数表示を採用 第08節 符号付二進数の方式 ○ 符号無[U]、絶対値表示[A]、補数表示[S] の相互変換 ○ ビット列の各方式での解釈 ○ 十進数からの各方式への変換 ● 絶対値表示 ● 補数表示 ・ ・ ・ ・ ・ ・ ・ ・ ・ ・ 数値桁は絶対値 変換は簡単 加減算には別の算法が必要 0に +0 と -0 の2つの表記が存在 範囲は8ビットで -127 ~ +127 数値桁は補数 変換には手順が必要 加算は符号無と全く同様 減算は反数の加算として実行 範囲は8ビットで -128 ~ +127 +107 = 0110 1011 [A] -107 = 1110 1011 [A] +107 = 0100 1011 [S] -107 = 1011 0101 [S] 1100 1010 [U] = +202 1100 1010 [A] = -74 1100 1010 [U] = +202 1100 1010 [S] = -54 = -(202-128) = 202-256 第09節 符号付二進数の変換と桁 第10節 [1] 符号付二進数の加減算
© Copyright 2024 ExpyDoc