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

領域が重なるブロック転送は上書きしない側の端から転送する

応用情報技術者試験2024年度 春期 午前8/コンピュータ構成要素 / プロセッサ

同一メモリ空間のアドレスマップ。実行前:アドレス1000は空、1001〜1004にデータ(網掛け)、1005〜1007は空。実行後:アドレス1000〜1002は空、1003〜1006にデータ(網掛け)、1007は空。実行前の1001→実行後の1003、1002→1004、1003→1005、1004→1006へとそれぞれ矢印で対応が示されている。
同一メモリ空間のアドレスマップ。実行前:アドレス1000は空、1001〜1004にデータ(網掛け)、1005〜1007は空。実行後:アドレス1000〜1002は空、1003〜1006にデータ(網掛け)、1007は空。実行前の1001→実行後の1003、1002→1004、1003→1005、1004→1006へとそれぞれ矢印で対応が示されている。
転送元の開始アドレス転送先の開始アドレス方向フラグ転送語数
1001100304
1001100314
1004100604
1004100614

選択肢

正解と解説

正解: 転送元の開始アドレス1004、転送先の開始アドレス1006、方向フラグ1、転送語数4

転送元1001〜1004と転送先1003〜1006は1003・1004の2語が重なっており、昇順に転送すると先に書き込んだ値で未転送の元データを壊してしまう。重なりがある場合は、上書きされる側から遠い末尾側から処理すればよいので、転送元1004・転送先1006を開始アドレスとし、方向フラグ1(降順)で4語転送する。

選択肢ごとの解説

出典:令和6年度 春期 応用情報技術者試験 午前 問8(IPA)

同じ分野の他の問題

最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。