正答1
解説
正解は1です。
CPUのレジスタのうち、スタックポインタの役割を問う問題です。
スタックポインタ(SP:Stack Pointer)は、主記憶上のスタック領域で、現在の最上段の位置を指すレジスタです。
【選択肢別解説】
1:○ サブルーチン呼出しや割込みのとき、戻り先アドレスやレジスタの内容はスタックに退避されます。
その格納位置のアドレスを示すのがスタックポインタです。
2:× 次に実行する命令のアドレスを示すのは、プログラムカウンタ(命令アドレスレジスタ)です。
3:× 主記憶から読み出した機械語命令を保持するのは、命令レジスタです。
4:× 割込みの許可状態や、演算結果の状態(ゼロ、負、桁あふれなど)を保持するのは、フラグレジスタ(PSW:Program Status Word)です。
【ポイント】
プログラムカウンタ、命令レジスタ、スタックポインタ、フラグレジスタの役割は、セットで出題されます。
サブルーチンから戻るときは、スタックから戻り先アドレスを取り出してプログラムカウンタに戻します。