#68 Article 8658 Posted at 1995/11/05 02:50:22 by MSP-Iris (MAP4370) [BASIC]

Subject: Re:*7 プログラムを始めたいのですが /8651 ... /8609 /8587

>これって「こういう風に書けば速くなる」という暗黙のルールみたいなのが
>あって、それに従うと醜くなるってのもあるんでしょうか。

 アセンブラだとこまごまとしたテクニックで随分速くなりますね。
 ロードやコンペアを論理演算に変換するとか、結構有名なものもあ
ります。486だと、MUL の代わりに LEA+Scaling を使うとか。
 アルゴリズムを見直すのと同じくらいの効果があります。

 もっともアセンブラでもジャンプの少ないコードの方が速いですか
ら、きれいなコードの方が速いと言えるんじゃないでしょうか。

 コンパイラの場合はどうなのかな。
 でも最近のコンパイラは頭が良くって、RISCマシンなんかだと
人間がアセンブラで書いたコードよりもコンパイラのはきだすコード
の方が速かったりするそうですね。そんなに必死にはつらなくても大
丈夫そう。それよりも hot spot のアルゴリズムをきれいにする方が
よさそうですね。

 N60-BASIC の場合は、よく使うサブルーチンはプログラムの先頭の
方に置くというテクニックがありました。

                                  MAP4370    MSP-Iris