応用情報技術者試験 応用情報技術者試験 平成30年度春期 午前8: 再帰的な処理を実現するためには,再帰的に呼び出したときのレジスタ及びメモリの内容を保存しておく必要がある。そのための記憶管理方式はどれか。

応用情報技術者試験 平成30年度春期 午前
Q 88 / 80
再帰的な処理を実現するためには,再帰的に呼び出したときのレジスタ及びメモリの内容を保存しておく必要がある。そのための記憶管理方式はどれか。
この問の正解率:80.51%(908件)

解説

応用情報技術者試験 平成30年度春期 午前 問8「再帰的な処理を実現するためには,再帰的に呼び出したときのレジスタ及びメモリの内容…」の正解と解説です。応用情報技術者試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約81%です。

正解

. LIFO

正答率 80.5%(908人中 731人が正解)

問題の解説

再帰呼び出しでは、呼び出すたびに現在のレジスタや戻り番地などを退避し、戻るときには最後に退避したものから順に取り出す必要がある。これは「後入れ先出し」の動作であり、LIFO(Last In First Out)=スタックで管理する。サブルーチンの戻り番地もスタック領域で管理される。よってウが正解。

選択肢ごとの解説

  • FIFO(First In First Out)は最初に入れたものを最初に取り出す方式で、キュー(待ち行列)の動作。再帰の戻り順序(後から呼んだものを先に戻す)とは逆である。
  • LFU(Least Frequently Used)は使用回数が最も少ないものを追い出すキャッシュ/ページ置換の方式であり、再帰処理の退避とは無関係。
  • LIFO(後入れ先出し)はスタックの動作で、再帰呼び出しのレジスタ・メモリ内容の退避と復元に適しており正しい。
  • LRU(Least Recently Used)は最後に使われてから最も時間が経ったものを追い出す置換方式で、再帰処理の管理方式ではない。

応用情報技術者試験 平成30年度春期 午前 の過去問一覧に戻る・問8

応用情報技術者試験 の iOS アプリ版

アプリ版なら、よりスムーズに動作し、
スワイプで問題遷移ができます。

応用情報技術者試験 合格.dev を App Store でダウンロード