本文へスキップ

技術士試験(情報工学部門)・情報技術者試験。ファーストマクロ。


Since 2016.4.19

令和6年度 春期 応用情報技術者試験問題と解説

問8

同一メモリ空間で、転送元の開始アドレス、転送先の開始アドレス、方向フラグ及び転送語数をパラメータとして指定することによって、ブロック転送ができる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番地に転送され、1003番地の内容が1001番地の内容に上書きされてしまうため、結果がおかしくなる。

イ 開始アドレス1001から1000、999、998の順に転送されてしまう。

ウ 転送元のアドレスの1004〜1007番地に入っている内容が、転送先の1006〜1009番地に転送されてしまう。

エ 正しい。

問7 目次 問9