今回は問題の解説です。これはおそらく暗記問題なので単純に暗記すれば試験は乗り越えられると思います。ただそれだと長期記憶に残らない可能性も高く自分としてはなるべく後で思い出せる知識にしたく調べてみました。が、応用の参考書にも載っていない部分が多かったのでchatGPTに聞いて少し深掘りした内容を書いています。
問題
CPUのスタックポインタが示すものとして、最も適切なものはどれか。
- ア サブルーチン呼出し時に,戻り先アドレス,レジスタの内容などを格納するメモリのアドレス
- イ 次に読み出す機械語命令が格納されているアドレス
- ウ メモリから読み出された機械語命令
- エ 割込みの許可状態,及び条件分岐の判断に必要な演算結果の状態
答えはアになります。
解説
まず単語を整理してみます。
スタックとはプログラムの実行時に一時的に情報を保存するメモリ領域です。割り込みや関数処理などの際に、レジスターやプログラムカウンターの値などを退避させる役割があります。
スタックポインタ
スタックポインタは、CPU内に物理的に存在するレジスタの一つです。現在のスタックのトップ情報を保持する役割を担っています。
サブルーチン
サブルーチンはプログラムの関数のことです。つまり一連の流れをひとまとめにしたものを言います。
個人的にはこれらの単語が最初ふわっとしていたので調べてみました。ここまで来るとなんとなく流れが見えてくると思います。
CPUがメモリからデータを取り出して処理(サブルーチンなど)する際にスタックで処理順序を管理していてその管理をするのがスタックポインタになるわけですね。
コメントを残す