壊れた過去と現在となの
zickです。
試験ということで今は開発は休憩中です。
趣向を変えてNScripterで書かれたソースでも載せてみます。
;;;下方向に成長するスタックのPUSHとPOP *push if %sp >= STACK_OVER mesbox "スタックオーバフロー", "Error" : end mov %%sp, %arg0 inc %sp return *pop if %sp <= STACK mesbox "Popできません", "Error" : end dec %sp mov %ret, %%sp return
NScripterって意外なことに、変数の間接参照とか出来て便利です。
そのかわり、局所変数に相当するものがないので、
関数(というよりラベル)の呼び出しをすると、変数が壊れます。
再帰呼び出しなんかをしようと思ったらスタックが必須でした。
ちなみにNScLisperのソースのほとんどはこのpush/popの呼び出しで出来てます(笑)
KARASU BLOGもよろしく。