通信用語の基礎知識 全国のICカードこれひとつ 戻る

スタックポインター
辞書:科学用語の基礎知識 半導体用語編 (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)で使われることが多いようである。

リンク
用語の所属
SP
関連する用語
スタック
レジスター
汎用レジスター

[再検索] [戻る]


通信用語の基礎知識検索システム WDIC Explorer Ver 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club
KisoDic