レジスタとは?
レジスタとは、プロセッサ内部にある最も高速な記憶。プログラムカウンタ、命令レジスタ、アキュムレータ、指標レジスタ、スタックポインタ、状態レジスタなど役割ごとに種類がある。主記憶より桁違いに速いが本数が限られ、その割付けはコンパイラの最適化対象になる。
高度試験・午前I(全区分共通)の過去問では2回出題されています(2018年度〜2021年度)。
れじすた
レジスタの意味
プロセッサ内部にある最も高速な記憶。プログラムカウンタ、命令レジスタ、アキュムレータ、指標レジスタ、スタックポインタ、状態レジスタなど役割ごとに種類がある。主記憶より桁違いに速いが本数が限られ、その割付けはコンパイラの最適化対象になる。
レジスタの具体例
状態レジスタには演算結果がゼロか、桁あふれが起きたかなどが記録され、条件分岐命令はこの内容を見て分岐先を決める。関数呼出しではスタックポインタが戻り番地や引数を積む位置を指し示す。
レジスタは試験でどう引っ掛けられる?
プログラムカウンタが保持するのは、いま実行中の命令ではなく次に取り出す命令の番地とするのが一般的。アキュムレータは演算結果を保持する作業用レジスタであり、番地を保持する役割とは区別する。
レジスタと関連する用語
レジスタが出た過去問
再帰的な処理を実現するためには、再帰的に呼び出したときのレジスタ及びメモリの内容を保存しておく必要がある。そのための記憶管理方式はどれか。
正解:LIFO
要点:再帰呼出しの退避・復元はLIFO(スタック)で行う
再帰呼出しでは、呼び出しのたびに戻り番地やレジスタの内容、局所変数を退避し、復帰時には最後に退避したものから順に取り出す必要がある。この「後入れ先出し」の順序で管理する方式がLIFO(スタック)であり、実際にプログラムの実行時にはスタック領域が用いられる。
出典:平成30年度 春期 高度共通_午前I試験 am1 問3(IPA)演算レジスタが16ビットのCPUで符号付き16ビット整数x1, x2を16ビット符号付き加算(x1+x2)するときに、全てのx1, x2の組合せにおいて加算結果…
正解:x1とx2の符号が異なる場合
要点:符号が異なる整数どうしの加算はオーバフローしない
符号付き16ビットの表現範囲は-32,768〜+32,767。x1とx2の符号が異なるとき、和の絶対値は必ず絶対値の大きい方の値以下に収まるので、元の値が表現できている限り和も範囲内となり、オーバフローは決して起こらない。オーバフローは同符号どうしを加算したときにだけ発生しうる。
出典:令和3年度 秋期 高度共通_午前I試験 am1 問4(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。