通常PC用 / 人気 更新 今日 カテ |
技術・工学 > 半導体 > 集積回路 > MPU > 動作・機能・技術 > レジスター・フラグ |
スタックポインター |
辞書:科学用語の基礎知識 半導体用語編 (IYIC) |
読み:スタックポインター |
外語:stack pointer |
品詞:名詞 |
|
概要 |
プロセッサーにより、レジスターが専用に用意されているものと、用意されていないものがある。専用レジスターがない場合は汎用レジスターで代用することになる。
例えば、Windowsパソコンで使われているx86は専用レジスターがあるが、スマートフォンで使われている32ビットのARMは専用レジスターがなかった(64ビットARMでは専用レジスターが追加された)。
特徴 |
動作 |
動作はプロセッサーごとに異なるので一般論になるが、通常、スタックポインターは最後にpushした値の先頭アドレスを指している。ただし実装によっては、次にpushされる先頭アドレスを指していることもある。
また、スタックの延びていく方向、つまりスタックに積む(pushする)場合に、アドレスが減るか増えるかも実装ごとに様々ある。
実装方法 |
ARMの用語を借りると、スタック制御は次の4種類がある。ストア(push)とロード(pop)で、おのおの選択される。
ストアとロードが4種類を選択するので、理論上は4×4で16通りとなる。しかし実際には、ストアしたものは後でロードする前提なので、SPの動きは相互に補完的でなければならない。
結果として、現実には次の4種類の組み合わせのどれかが使われている(こちらもARMの用語)。
一般的な挙動 |
x86の場合、ARMの用語を借りればFD(Full Descending)に対応する。次の動作をする。
ARMの場合は4種類から自由に選択できるが、実際にはx86と同様に、FD(Full Descending)で使われることが多いようである。
リンク |
通信用語の基礎知識検索システム WDIC Explorer Ver 7.04a (27-May-2022) Search System : Copyright © Mirai corporation Dictionary : Copyright © WDIC Creators club |