【.NETへの移行はLonghornリリース後でいいや。】
■ このスレッドは過去ログ倉庫に格納されています
0103デフォルトの名無しさん
NGNGDelphi版ギコbasicのコードはけっこう複雑だ。
で、計算部分は再帰下降という手法を使っているみたい。
2*(A+B) という式を * を見つけたらCALLして"("を見つけたらCALLして とやってる。
で、インタプリタだから直接その場で計算してるけど、直接計算させる代わりにバイトコードを吐けばいい。
数ならsipush
ラベルなら iload
演算は iadd〜idivをそのままの順で吐き出せば スタックマシンだから簡単だ。
■ このスレッドは過去ログ倉庫に格納されています