Linux

b7e2fc55 :Anonymous 2010-08-27 03:23
x86がマトモに使えるようになったのは80386からですね。
80286の用途なんて一般には「高速な8086」という程度のもんで、
実際、競わせると内部32bit構造の68020と同じくらい速いから
処理速度的にはモトローラに負けてなかったという話です。

問題は、プロテクトモードに悪名高いMulticsの技術を採り入れて
仮想記憶もセグメンテーションで管理しようとしたこと
(後に386から一般的なページングも追加された)
そして、主流になる言語がCやC++ではなく、PASCALだと考えたことで、
これは後にアレな結果になります。

スタックをアクセスするためのポインタとなるレジスタや、
Pascalっぽい流儀のスタックフレーム操作命令が用意されているのは
そういう理由なのだけど、Intelはその実装に関しても何か
間違えていたらしく、想定していたはずのPascal処理系ですら使わない
ダメな命令を追加していたそうです。

その後C言語が全盛となって使われなかっただろうと思ったら、
なんとWindowsのAPIはPascal方式で呼び出されるのだとか。

もともとPascal向きに作られたCPUゆえ、Pascalっぽい呼び出し方のほうが
コードサイズも小さくなって効率がいいのだと聞きました。
Powered by shinGETsu.