title: スタック型とレジスター型
url:
http://csharptan.wordpress.com/2011/12/17/net%e3%81%ae%e4%b8%ad%e9%96%93%e8%a8%80%e8%aa%9e/
snippet:
-----引用-----
.NETのILに限らないんですが、多くの
仮想マシンはスタック型マシンになっています。
一方で、
実CPUはだいたいレジスター型と呼ばれる構造をしています。スタックとは別に、レジスターと呼ばれる、高速に読み書き可能な記憶領域(個数が限られています)を持ちます。
コンパイラーがスタック型の命令を作るのは結構簡単です。仮想マシンの命令がスタック型になっていることが多いのはこのためです。レジスター型のCPU向けのコンパイラーであっても、一度スタック型の中間言語を生成した後で、実際のレジスター型の命令に置き換えるようなものも多いです。
-----引用-----
0 件のコメント:
コメントを投稿