コンピューターのハードウェア

グラフィック(Graphic)

 一般的なパソコンの場合、ディスプレイやグラフィックス機能などで表示する色を32ビットで処理する。しかし、実際には32ビットを使い切っているわけではない。一般的なパソコンは32ビットカラーを選択できる。一方、「ペイント」などの画像処理ソフトは、赤・緑・青を各8ビット(0〜255)、計24ピットで指定する。
 色の基本となるのは、光の3原色といわれる赤(R=Red)、緑(G=Green)、青(B=Blue)。これらをさまざまな配分で混ぜて色を表現する。具体的には、RGB各色の成分に対し各8ビットの値を割り当て、256階調で表現。表現できる色数は256×256×256=1677万7216色になる。色数をこれ以上増やしても、肉眼では判別できない。つまり、24ビットで十分ということである。実際に画像処理ソフトでは、R、G、Bの各値を0〜255の8ビットで指定する。
 パソコンで色を32ビットで処理するのは、CPUの処理単位(32ビットまたは朗ビット)に合わせた方が処理が高速になるため。余った8ビット分は破棄されるか、透明度を表現するデータなどに使われる。

 画像情報は多数のドット(画素とかピクセルともいう)から成り立っている。パソコンの典型的な表示モードに640×480ドットという解像度があるが、この画面は合計640×480=307200個の微細なドットで構成されている。
この解像度の画像を記録するには、画像を構成する307200個のドットのそれぞれの色を数値化して記憶すればよい。このような原理で画像情報は記憶されている。
色を数値化する方法としてはパソコンで表される色はR(赤)、G(緑)、B(青)の光の3原色の加色による混合で表現するのが一般的である。
R、G、Bの各色の組み合わせで、非常に多くの色を作り出すことができる。逆に、すべての色がR、G、Bの3色に分解できる。

 ビデオメモリ

 パソコンには画面表示のために画像を記憶する特別なメモリが搭載されている。このメモリをビデオメモリ(ビデオRAM)と呼ぶ。
 パソコンはビデオメモリに画面の各ドットの色をRGBデータにして書き込む。以前はビデオメモリのチップにアクセス速度の高速なデュアルポートVRAMが使われるのが一般的であったが、コストが高くなってしまうため、最近ではメインメモリと共通のEDO DRAMや、SGRAMなどが使われることが多くなった。
 画面の各ドットは、ビデオメモリのアドレスとの対応が決まっている。画面のいちばん左上のドットの情報は、ビデオメモリの先頭の3バイトに書き込まれ、その右のドットが次の3バイトに書き込まれるといった具合である。
 以下、順番に画面右下のドットまでビデオメモリに書き込まれる。ディスプレイの画面走査の順番どおりに、画像がビデオメモリに書き込まれているわけである。
 ビデオメモリは、バスと呼ばれるデータの通り道を介してCPUとつながっており、CPUはビデオメモリの内容を自由に書き換えることができる。
 文字を書き込んだり、線を引いたりすることもあるし、ディスクに保存してある画像をビデオメモリに転送することもある。
 ビデオメモリにつながる表示回路は12nsから40nsに1回という非常に短い周期でビデオメモリから1ドット分のRGBデータを読み出す(640×480ドットの解像度の場合)。次にR、G、Bそれぞれの256段階に数値化されたデータは、D/A(デジタル/アナログ)コンバータを通って0.7V前後の電圧に変換される。
 このアナログ信号がパソコンに接続されたカラーディスプレイに送られて、ディスプレイの電子ビームの強度をコントロールし、ビデオメモリに記憶された色がディスプレイの画面上で再現される。
 パソコンの表示回路には、もうひとつ大切な働きがある。同期信号の出力である。表示回路は、1画面の走査を開始するタイミングを知らせる信号(垂直同期信号 周波数60〜100Hz程度で1秒間に60〜100画面が表示される)と、各走査線の走査開始タイミングを知らせる信号(水平同期信号 周波数30〜80KHz程度)をディスプレイに送る。この2つの信号に合わせて走査を行うことで、きちんと画面が表示できる。周波数は解像度によって異なる。
 表示する画像の色数や、表示する画素数が多くなるほど処理するデータは巨大になる。そのため、CPUや表示回路の負担が大きくなって、データの処理に時間がかかる。CPUや表示回路の性能が低かったころは、フルカラーモードやハイカラーモードより表示速度の速い256色表示モードが標準的に使われていたが、いまでは画面表示のハードウェアが大幅に進歩して、256色表示モードが使われることは少なくなった。

 1677万色=フルカラー(Full Color)表示

 パソコンは、256色、65536色、1677万色などのグラフィック表示モードを備えている。特に写真画像をリアルに表現できる1677万色モードはフルカラー(またはトゥルーカラー(True Color))モードと呼ばれて人気がある。
 1677万色モードはなぜフルカラーというのでしょうか。我々が感じる色は無数のはずなのに、色は有限なのでしょうか? 答えは人の感覚にある。8ビットでは256段階の明るさを示すことができる。 人間の視覚では256分の1の明るさの変化をとらえることができないので、事実上、無段階の色を表現できる。一般に人は数百万色以上になると色の違いがわからなくなる。それで1677万色はフルカラーと呼ばれている。1677万色モードではR(赤)、G(緑)、B(青)それぞれの明るさのレベルを、0から255までの256段階の数値で管理している。256×256×256=16777216であり、約1677万通りの異なる色が表現できる。たとえば、R、G、Bの全部の明るさが0のとき、R、G、Bを加えた混合色は黒。R、G、Bの明るさレベルがすべて255なら、混合した色は真っ白になる。Rが255,Gが200、Bが170では肌色になる。このようにR、G、Bの3色の明るさの組み合わせられたデータをRGBデータという。
 フルカラーモードではR、G、Bそれぞれの明るさを256段階で管理している。パソコンはデータを2進数で扱っているので、256=2^8、つまり8ビット(=1バイト)分のメモリを使って、0から255まで256種類の数値を記憶する。一般に色の表現方法としては各色8ビットを2つに分け4ビットずつの16進数で表す。すなわち赤は「ff、00、00」、緑は「00、ff、00」、青は「00、00、ff」、白は「ff、ff、ff」、黒は「00、00、00」という具合である。
 メモリは最低8ビット(=1バイト)単位でしか読み書きできない。そこで、取り扱うデータも8ビットの倍数でないと具合が悪い。フルカラーのRGBデータは8×3色=24ビット(3バイト)のメモリを使って記憶されている。さらに、これが画面のドット数分だけ必要になる。たとえば、640×480ドットの解像度で1677万色の画像を記憶するのに必要なメモリは、次のようになる。
  640ドット×480ドット×3バイト=921600バイト=約900Kバイト

 65536色=ハイカラー(High Colur)表示

 ハイカラーと呼ばれる65536色モードも、基本的には1677万色モードと同様にR(赤)、G(緑)、B(青)データで色を表現する。
 しかしRの記憶に5ビット、Gの記憶に6ビット、Bの記憶に5ビット、合計16ビット(=2バイト)を使う点は大きく異なる。緑だけ6ビットなのがすっきりしないが、これは人間の目が緑色の明るさの変化に他の色よりも敏感だからである。
 5ビットのデータは32段階、6ビットのデータは64段階の明るさを表現することができるので、全体で32×32×64=65536通りの色を作り出すことができる。ただし写真の美しさを表現するには、ちょつと色数が足りない。
 ハイカラーモードは、1ドットあたりのデータ量が16ビットなので、16ビットカラーモードとも呼ばれます。また、Gのデータも5ビットで扱う32768色モードも存在する。

 256色表示モード

 パレットを使う256色表示モードも、以前は標準的に使われる表示モードであった。256色といっても、1677万色の中から任意の256色を選んで表示できるので、かなり美しい再現ができる。その秘密は256色モ−ドの記録方法にある。
 256色モードでは、ビデオメモリにはR、G、Bデータのかわりに0から255までのインデックス番号(8ビット=1バイトデータ)が記録される。一方、表示回路のほうはカラーパレットと呼ばれる256組のメモリを備えており、それぞれのカラーパレットに3バイトのR、G、Bデータを入れることができる。
 カラーパレットは、ディスプレイコントローラの中にあるメモリで、インデックス番号ひとつあたり、それぞれ24ビット(1677万色)のR、G、Bデータを記憶することができる。
 表示回路はビデオメモリから順次1バイトのインデックス番号を読み出し、カラーパレットを参照して3バイトのR、G、Bデータに変換する。これをD/A変換してディスプレイに出力している。
 ビデオメモリは間接的に24ビットのR、G、Bデータを記憶していることになるが、実際には1ドットあたり8ビットのインデックス番号を記録するだけでよいので、必要なビデオメモリの容量は、1677万色モードの3分の1で足りてしまう。
 なお、カラーパレットのR、G、BデータはCPUが自由に書き換えることができる。CPUは、表示する画像を調べて、それを表示するために最適な256色を選んでカラーパレットにデータをあらかじめセットしておく。これは1677万色の中から任意の256色を選んで、カラーパレットに入れておけるということである。

 グラフィック処理

 CPUからの画像データを処理して、ディスプレイに表示する回路。3D画像の描画などの複雑な処理を、CPUの代わりにこなして、パソコンの処理速度を高める。別名GPU(グラフィックス・プロセッシング・ユニット=画像演算処理装置)とも呼ばれる。
 グラフィックスは独立タイプと、チップセット内蔵タイプの2種類がある。独立タイプは処理速度が速く、主に高性能なパソコンに搭載される。データの転送速度が高速な専用のビデオメモリーを搭載したものが多い。
 チップセット内蔵タイプは、ノースブリッジ側のチップにグラフィックス機能を内蔵したもので、独立タイプよりも性能が低い代わりにコストが安い。ビデオメモリーは、パソコン本体のメモリーを一部流用する。専用ビデオメモリーよりもデータ転送速度が遅く、これも処理性能が低い一因である。
 3D効果を多用するWindows Aeroを快適に使うには、グラフィックス性能は高いほどいい。コントロールパネルの「パフォーマンスの情報とツール」で、性能の指標になる「Windowsエクスペリエンス インデックス」を計測できる。
 またBDやHD DVDドライブ搭載モデルで、市販のハイビジョンソフトを再生する場合にも、高いグラフィックス性能が要求される。グラフィックスの性能が低いと映像がコマ落ちしたり、再生自体ができない場合もある。