スタックマシン
ナビゲーションに移動
検索に移動
スタックマシンとは、スタックによる計算を中心とした計算機のことである。
概要[編集]
スタック[1]による計算とは、例えば加法であれば、
- 数値1をスタックに積む
- 数値2をスタックに積む
- 加算する(スタックから値を2つ取り出し、結果をスタックに積む)
といった命令となる。これは、逆ポーランド記法と計算順序が同じになるということである。
スタックマシンのメリットの1つは、ロードストア先の指定が不要なことにより、命令セットがコンパクトになることが挙げられる。その代わり、命令数自体は多くなってしまう。
仮想マシンで使用されることも多く、Java仮想マシン、.NETの中間言語、PythonのC言語実装であるCPythonなどが仮想スタックマシンである。
ハードウェアとしてのスタックマシンも主流ではないが、実在する。
脚注[編集]
- ↑ スタックの記事が作られるまで暫定的に説明を書いておく。スタックは後入れ先出し(LIFO)のデータ構造で、トランプなどのカードデッキをイメージするとわかりやすい。常にデッキのトップ(一番上)にしかアクセスできず、カードを引く時も置く時もトップに対して行う。