情報学部 菅沼ホーム

命令とデータの表現方法

  1. ビット

      コンピュータ内では,全ての命令やデータが 0 と 1 の組合せで表現されます.その 0 や 1 の一つずつをビットbit )と呼びます.例えば,8 つの 0 と 1 で構成されるデータ,
    01001111			
    ビット長は 8 ビットであるといいます.記憶装置に記憶可能な量(記憶容量)もビットを使用して表現されますが,ビットのままですと,大きな容量の場合,その量を表すために非常に大きな数値を必要とします.そこで,以下に示すような単位が使用されます.
    1 バイトBbyte )  8 ビット
    1 キロバイトKB )  1024( = 210 )バイト
    1 メガバイトMB )  1024( = 210 )キロバイト
    1 ギガバイトGB )  1024( = 210 )メガバイト
    1 テラバイトTB )  1024( = 210 )ギガバイト			
      データを転送する速度にもビットが使用されます.1 秒間に 1 ビット転送する速度を bps( bit per second,bit / s,ビット/秒)とし,kbps(キロビット/秒),mbps(メガビット/秒),gbps(ギガビット/秒) などの単位が使用されます.

  2. 文字,音声,画像

      コンピュータ内において使用できるのは 0 と 1 だけですので,当然,数値は 2 進数で表現されます.普段の生活で使用している 10 進数の表現方法とは多少異なりますが,似たような表現方法になります(「情報の表現」参照).しかし,文字の場合は,かなり異なってきます.一般に,1 バイト( 8 ビット),または,2 バイト( 16 ビット)を使用して 1 文字を表現します.1 バイトでは,256 種類の文字しか表現できませんので,日本語の場合は,2 バイト( 65536 種類の文字を表現可能)を使用します.一つのビットの並びをある文字に対応させるわけですが,その規則を文字コードと呼びます.文字コードには,下に示すようにいくつかの種類があります.一般に,ある文字コードで記述された文字を,他の文字コードの体系内で読むためには,文字コードの変換が必要です.
    ASCII コード     8 ビットコード(「ASCII コード」参照)
    ShiftーJIS コード  16 ビットコード
    utf-8 コード      16 ビットコード			
      音声は,本来,空気の粗密波です.そのままでは,遠方へ伝達できませんので上図のような電気信号に変換されます.しかし,このような連続信号を直接コンピュータで扱うことはできません.そこで,音声信号の Δt 時間(サンプリング間隔)毎の値( an,an+1,an+2,・・・ )を 16 ビット( 2 バイト)の数値として表し,それらの値の時系列として音声を表現します.

      では,どのようなサンプリング間隔でデータを記録すればよいのでしょうか.サンプリング定理によりますと,ある波形が含む最大周波数を f Hz としたとき,1 / 2f 秒より短い間隔で記録すれば,記録されたデータから元の波形を復元できます.人間の最大可聴周波数は 20 kHz ですので,サンプリング間隔を 1 / (2 * 20000) 秒(この逆数がサンプリング周波数)以下にすればよいことになります.実際,CD のサンプリング周波数(サンプリング間隔の逆数)は 44.1 kHz になっています.電話で話すと相手の声が多少変わって聞こえるのは,電話の場合,サンプリング周波数が 8 kHz ですので,元のデータを完全には復元できないことが原因です.

      40 kHz でサンプリングした場合,1 秒間に 40000 個のデータを記録することになります.各データは 2 バイト( B )で表されていますので,1 秒間に約 80 KB,1 分間で約 4.8 MB のデータ,ステレオですとこの 2 倍,約 9.6 MB のデータが必要になります.コンピュータ内では,1 つの数字が 4 又は 8 バイト,1 文字が 1 又は 2 バイトで表され,文庫本 1 冊が 400 字詰め原稿用紙 500 枚( 200000 文字)としたとき,約 400 KB であることを比較すると,如何に膨大なデータ量かが分かると思います.このように,そのままでは余りにもデータサイズが大きくなりますので,圧縮して利用する場合も多くあります.例えば,MP3 という圧縮形式では,CD の音質をほぼ維持したまま,1 / 10 程度のサイズまで圧縮可能です.

      画像は,基本的に,点(画素ピクセル)の集まりとして表現されます.1 つの画素は,R(赤),G(緑),B(青)の強さ,及び,透明度を各 8 ビット( 1 バイト)の情報として持っています.つまり,1 つの画素を表すためには,4 バイト必要になります.ディスプレイの解像度を 1024 × 768 とすると,1画面を表すのに( 1024 × 768 × 4 )バイト = 3 MB 必要になります.このように,画像も大きなデータ量となりますので,JPEGJPG ) や GIF といった方法で,圧縮して使用する場合が多くなります.

      動画になると,そのデータ量は更に増加します.動画は,1 秒間に 15 ~ 30 枚の画像を連続して表示することによって作成されます.1 画像の大きさが 3 MB であり,1 秒間に 30 枚の画像を表示するとすれば,1 秒間に 90 MB,1 分間に 5.27 GB のデータ量となります.勿論,圧縮して保存されますが,それでもかなりの容量を必要とすることに注意してください.

情報学部 菅沼ホーム