HOME»基本情報技術者平成25年春期問題»午後問1
基本情報技術者過去問題 平成25年春期 午後問1
⇄問題文と設問を画面2分割で開く⇱問題PDF問1 ハードウェア
カラー画像に関する次の記述を読んで,設問1~3に答えよ。
赤,緑,青の色の光(以下,色という)を,光の3原色という。赤,緑,青の色を発光させて重ね合わせることによって様々な色を表現することができる。緑と青の色を重ね合わせるとシアンに,青と赤の色を重ね合わせるとマゼンタに,赤と緑の色を重ね合わせると黄に,赤緑青全ての色を重ね合わせると白になる。光の3原色のどれも発光していないと黒になる。光の3原色による色の表現を,図1に示す。ここで,図1中の記号は,表1に示す色を表す。
赤,緑,青の色の光(以下,色という)を,光の3原色という。赤,緑,青の色を発光させて重ね合わせることによって様々な色を表現することができる。緑と青の色を重ね合わせるとシアンに,青と赤の色を重ね合わせるとマゼンタに,赤と緑の色を重ね合わせると黄に,赤緑青全ての色を重ね合わせると白になる。光の3原色のどれも発光していないと黒になる。光の3原色による色の表現を,図1に示す。ここで,図1中の記号は,表1に示す色を表す。
設問1
ディスプレイにカラー画像を表示するために,1画素を3ビットで表現することにする。3ビットの先頭(左端)から各ビットに赤,緑,青の色の情報を順に割り当て,2階調(1のとき発光,0のとき非発光)で表現する。この3ビットのビットパターンで8色を表現することができる。色とビットパターンの対応を表2に示す。 に入れる正しい答えを,解答群の中から選べ。
a に関する解答群
- 011
- 101
- 110
解答選択欄
- a:
解答
- a=イ
解説
設問内に「青と赤の色を重ね合わせるとマゼンタに…」とあるので、マゼンタを表現するには赤と青のビットを1にセットします。
ビットは左から赤,緑,青と並んでいるので、マゼンタを表現するビットパターンは「101」が適切です。
a=イ:101
同様の考えでシアンは「緑と青」なので「011」、黄は「赤と緑」なので「110」のビットパターンになります。
ビットは左から赤,緑,青と並んでいるので、マゼンタを表現するビットパターンは「101」が適切です。
a=イ:101
同様の考えでシアンは「緑と青」なので「011」、黄は「赤と緑」なので「110」のビットパターンになります。
設問2
次の記述中の に入れる正しい答えを,解答群の中から選べ。
ディスプレイに画像を表示するとき,画像データは,ビデオ RAM (以下,VRAMという)と呼ばれるメモリに格納されている。
カラー画像データを VRAM に格納する方法の一つに,プレーンドアクセス方式がある。プレーンドアクセス方式では,VRAM 上にディスプレイの画素数と同じ数のビットをもつプレーンという区分を複数用意する。各プレーンの先頭に位置するビットをディスプレイの最左上の画素に対応づけ,ディスプレイの左から右,上から下の画素へと順にプレーンのビットを割り当てる。赤,緑,青それぞれの色を2階調で表現する場合,色の情報を格納するために,VRAM 上にプレーン1,プレーン2,プレーン3と呼ぶ,三つの区分を用意する。プレーン1,プレーン2,プレーン3のそれぞれを,赤,緑,青の色に割り当て,各プレーンの同じ位置のビットを取り出した3ビットで,1画素を表現する。
例えば,プレーン1の先頭ビットが0,プレーン2の先頭ビットが1,プレーン3の先頭ビットが1のとき,ディスプレイの最左上の画素の色はbとなる。
VRAM の内容が図2のとおりであった場合,各プレーンの先頭から数えて6番目のビットに対応するディスプレイの画素の色はcとなる。ここで,VRAM の内容は16進数で表記している。
ディスプレイに画像を表示するとき,画像データは,ビデオ RAM (以下,VRAMという)と呼ばれるメモリに格納されている。
カラー画像データを VRAM に格納する方法の一つに,プレーンドアクセス方式がある。プレーンドアクセス方式では,VRAM 上にディスプレイの画素数と同じ数のビットをもつプレーンという区分を複数用意する。各プレーンの先頭に位置するビットをディスプレイの最左上の画素に対応づけ,ディスプレイの左から右,上から下の画素へと順にプレーンのビットを割り当てる。赤,緑,青それぞれの色を2階調で表現する場合,色の情報を格納するために,VRAM 上にプレーン1,プレーン2,プレーン3と呼ぶ,三つの区分を用意する。プレーン1,プレーン2,プレーン3のそれぞれを,赤,緑,青の色に割り当て,各プレーンの同じ位置のビットを取り出した3ビットで,1画素を表現する。
例えば,プレーン1の先頭ビットが0,プレーン2の先頭ビットが1,プレーン3の先頭ビットが1のとき,ディスプレイの最左上の画素の色はbとなる。
VRAM の内容が図2のとおりであった場合,各プレーンの先頭から数えて6番目のビットに対応するディスプレイの画素の色はcとなる。ここで,VRAM の内容は16進数で表記している。
b,c に関する解答群
- 青
- 赤
- 黄
- 黒
- シアン
- 白
- マゼンタ
- 緑
解答選択欄
- b:
- c:
解答
- b=オ
- c=ア
解説
〔bについて〕
プレーン1(赤)…0,プレーン2(緑)…1,プレーン3(青)…1 なのでビットパターンは「011」です。設問内に「緑と青の色を重ね合わせるとシアンに…」という記述があるので、画素の色はシアンが適切です。
b=オ:シアン
〔cについて〕
各プレーンの内容を2進数に変換すると以下のようになります。各プレーンの先頭から6ビット目から作られるビットパターンは「001」なので、画素の色は青になります。
c=ア:青
プレーン1(赤)…0,プレーン2(緑)…1,プレーン3(青)…1 なのでビットパターンは「011」です。設問内に「緑と青の色を重ね合わせるとシアンに…」という記述があるので、画素の色はシアンが適切です。
b=オ:シアン
〔cについて〕
各プレーンの内容を2進数に変換すると以下のようになります。各プレーンの先頭から6ビット目から作られるビットパターンは「001」なので、画素の色は青になります。
c=ア:青
設問3
次の記述中の に入れる正しい答えを,解答群の中から選べ。
設問2のプレーンドアクセス方式では,赤,緑,青それぞれの色に一つのプレーンを用意することによって,8 色を表現することができた。一つの色に複数のプレーンを用意することによって,その色の階調数を増やすことができる。その結果,より多くの色を表現することができるようになる。
設問2のプレーンドアクセス方式では,赤,緑,青それぞれの色に一つのプレーンを用意することによって,8 色を表現することができた。一つの色に複数のプレーンを用意することによって,その色の階調数を増やすことができる。その結果,より多くの色を表現することができるようになる。
- VRAM 上に五つの区分を用意し,各区分をプレーン1,プレーン2,…,プレーン5と呼ぶ。各プレーンの同じ位置のビットを取り出した 5 ビットで,1 画素を表現する。プレーン1を赤に,プレーン2とプレーン3を緑に,プレーン4とプレーン5を青に割り当てる。
このとき,赤は2階調,緑と青はそれぞれd階調となり,この 5 ビットでe色を表現することができる。 - 縦600×横800画素のデイスプレイに 16 色を表現するためには,少なくともfkバイトの VRAM が必要である。ここは1kバイトは1,000バイトとする。
d,e,f に関する解答群
- 2
- 4
- 8
- 16
- 32
- 60
- 64
- 120
- 128
- 240
解答選択欄
- d:
- e:
- f:
解答
- d=イ
- e=オ
- f=コ
解説
〔dについて〕
青と緑にはそれぞれ2ビット分が割り当てられます。2ビットでは「00」「01」「10」「11」の4種類のパターンを表現できます。各色1ビット(0か1)のときは発光と非発光の2通りしか表現できませんが、各色2ビットのときは、非発光、33%発光、66%発行、100%発光というように4階調を表現できるようになります。
d=イ:4
〔eについて〕
赤…2階調、青…4階調、緑…4階調の組合せで表現できるビットパターン数は、
2×4×4=32
したがって32色が表現可能です。
e=オ:32
〔fについて〕
24=16 であることから、16色を表現するために必要なビット数は4ビット、1バイトは8ビットなのでバイト単位に直すと「0.5バイト」です。ディスプレイの総画素数は「縦画素数×横画素数」で計算できるので、必要となる容量は次のように求められます。
600画素×800画素×0.5バイト
=240,000バイト=240kバイト
f=コ:240
青と緑にはそれぞれ2ビット分が割り当てられます。2ビットでは「00」「01」「10」「11」の4種類のパターンを表現できます。各色1ビット(0か1)のときは発光と非発光の2通りしか表現できませんが、各色2ビットのときは、非発光、33%発光、66%発行、100%発光というように4階調を表現できるようになります。
d=イ:4
〔eについて〕
赤…2階調、青…4階調、緑…4階調の組合せで表現できるビットパターン数は、
2×4×4=32
したがって32色が表現可能です。
e=オ:32
〔fについて〕
24=16 であることから、16色を表現するために必要なビット数は4ビット、1バイトは8ビットなのでバイト単位に直すと「0.5バイト」です。ディスプレイの総画素数は「縦画素数×横画素数」で計算できるので、必要となる容量は次のように求められます。
600画素×800画素×0.5バイト
=240,000バイト=240kバイト
f=コ:240