> 90%の出来を92%にする程度
確かにそうかもしれない。
でも、8ビット時代のBASICのマシン、プログラムのサイズは16KBだの32KBだの64KBといった制限はあれど、論理行数は60000行以上を許されていたわけです。そして、クロック速度は例えば1MHzとか4MHzのマシンで10000行ぐらいあるプログラムの行番号の付け替えが、アセンブラで書かれているとはいえ、ほとんど数秒とかからずに終わるのですよ。そういう経験があると、いくらエミュレータ上とはいえ、たかだか200行そこそこで10秒以上かかるといわれると、やっぱりもうちょっとがんばりたい気分にはなる。
> > 実行時のコストが一番高いのは何かというと、比較ならびに条件分岐
> そんな常識がかつて存在したのですね。
たぶん、1960年代とか1970年代のころの話だと思う。
80年代のBASICでは既に伝説でしたけど、if then elseをいくつも重ねるよりはVzマクロで言うところの多重分岐のようなコードのほうが速い、みたいな事は言われていましたね。
> 1行ごとにローカル10番で12回の全置換を試みるコストの方が気になります。
同感です。こちらも何とか改善できる方法が思いつければいいんですけど。
マークジャンプについては、書き方を教えていただきありがとうございます。
こちらは、書き換えたバージョンを使って、所要時間の測定までやってみたいと思います。あと、検索2回ではなくジャンプ+検索1回のコードでも測定してみたいかな。
関連記事一覧ツリー
(▼ を押すとツリー全体を一括表示します)
-
▼ - 5731.N88-BASICのRENUMのようなマクロ - としき 25/03/29-14:22
返信フォーム
(この記事に返信する場合は下記フォームから投稿して下さい)