「応用情報技術者試験/平成30年秋期午前問20」

問題

出典:応用情報技術者令和平成30年秋期午前問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増やす。

ア:3847番地
イ:7680番地
ウ:7694番地
エ:8978番地

解説

「・x=639の次はx=0とし、yを1増やす。」という記述から640x=y。
図にある通り、一つの座標には二つの番地が必要。

「直線上のx=7」とは具体的には(7,6)である。
(x,y)の座標の(7,6)である。
yが6つとxが7つである。
yをxに変換すると、640×6=3840
それにxを足すと、3848。
この座標に到達するには、3848の2倍のメモリが必要。
(一つの座標には二つの番地)

3848×2=7696

「x=7の画素に割り当てられたメモリのアドレスの先頭は何番地か」
というのが問題である。

(7,6)の終端のメモリアドレスは7696であるが、
先頭を問われているので、1番地分の2を引いて。

7694が正解

解答

正解:ウ

アドセンス
改行

テックキャンプ