平成31年 春期 応用情報技術者 午前 問9

同一メモリ上で転送するとき、転送元の開始アドレス、転送先の開始アドレス、方向フラグ及び転送語数をパラメータとして指定することでブロック転送ができるCPUがある。
図のようにアドレス1001から1004の内容をアドレス1003から1006に転送する場合、パラメータとして適切なのものはどれか。
ここで、転送は開始アドレスから1語ずつ行われ、方向フラグに0を指定するとアドレスの昇順に、1を指定するとアドレスの降順に転送を行うものとする。

転送元の開始アドレス 転送先の開始アドレス 方向フラグ 転送語数
1001 1003 0 4
1001 1003 1 4
1004 1006 0 4
1004 1006 1 4


答え エ


解説

 ア  アドレス1001→アドレス1003、アドレス1002→1004、アドレス1003→アドレス1005とデータの転送が行われるが、アドレス1003の内容が既にアドレス1001の内容に書き換わっているので、正しい転送ができない。
 イ  アドレス1001→アドレス1003、アドレス1000→アドレス1002…となり意図する転送ができない。
 ウ  アドレス1004→アドレス1006、アドレス1005→アドレス1007…となり意図する転送ができない。
 エ  アドレス1004→アドレス1006、アドレス1003→アドレス1005、アドレス1002→アドレス1004、アドレス1001→アドレス1003と正しいデータの転送が行われ、データの破壊も発生しない。


キーワード
・ブロック転送

キーワードの解説
  • ブロック転送
    データを一定のまとまった単位で転送(コピー、通信)することです。
    コンピュータに接続される記憶装置(デバイス)には、バイト単位やビット単位ではアクセスできないものがあり、それらにはその記憶装置にあったブロックサイズでアクセスを行います。

もっと、「ブロック転送」について調べてみよう。

戻る 一覧へ 次へ