応用情報技術者 平成30年秋期 午前問20

午前問20

次の方式で画素にメモリを割リ当てる640×480のグラフィックLCDモジュールがある。座標(x,y)で始点(5,4)から終点(9,8)まで直線を描画するとき,直線上のx=7の画素に割リ当てられたメモリのアドレスの先頭は何番地か。

〔方式〕
  • メモリは0番地から昇順に使用する。
  • 1画素は16ビットとする。
  • 座標(0,0)から座標(639,479)まで連続して割り当てる。
  • 各画素は,x=0からx軸の方向にメモリを割り当てていく。
  • x=639の次はx=0とし,yを1増やす。
20.gif/image-size:450×254

分類

テクノロジ系 » ハードウェア » ハードウェア

正解

解説

まず、番地を求める対象である座標(7, 6)の画素が格納される位置を考えます。座標(7, 6)は8列7行目に位置し、メモリには上の行から順に格納されていくため、先頭から数えた順番は、

 640×6+8=3848(個目)

メモリの幅は8ビットで1画素は16ビットですので、1つの画素には2つの番地が割り当てられます。格納される順番ごとにメモリアドレスの先頭を考えてみると、1番目の画素はメモリの0番地、2番目は2番地、3番目は4番地、…、641番目(2行目先頭画素)は1280番地 になります。つまり、n番目の画素が割り当てられるメモリアドレスの先頭は「(n−1)×2番地」で表せます。

よって、先頭から3848番目のメモリアドレスの番地は、

 (3848−1)×2=7694(番地)

したがって「ウ」が正解です。
© 2010-2019 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop