SleepVM に関数呼び出しを追加してみた
るびま には宿題として関数呼び出しを実装してみろ、というのがあったのでやってみました。
サンプルのプログラムとしてユークリッドの互除法をやってみました。
# goto :main :gcd # ユークリッドの互除法 getarg 1 push 0 eq ifeq :gcd_0 getarg 0 ret :gcd_0 getarg 1 getarg 0 getarg 1 mod call :gcd 2 ret :main push 1071 push 1029 call :gcd 2 print