x86 NASM-Assembly で再帰的な Ackermann-Peter-Function を実装しようとしています。関数は次のように定義されます。
*a(0;m) = m + 1
*a(n + 1; 0) = a(n; 1)
*a(n + 1;m + 1)) = a(n; a(n + 1;m))
私の問題は、適切に開始する方法さえ想像できないことです。今では、アセンブリで再帰的に「x の累乗」関数のみを実装しました。
http://pastebin.com/rsWALyCq (ドイツ語のプロンプトは n と m を要求するだけです)
これで得られるあらゆる助けに感謝します。
--
SO私はプッシュ/ポップステートメントを対称にしましたが、それでもセグメンテーション違反が発生します。全体をデバッグしようとしましたが、firstcase 内に Debug-Message を配置しました。私はプログラムをコンパイルし、n=0 と m=0 で試してみましたが、Debug-Message が出力されないため、firstcase に入ることさえありません。なぜ彼がそれをしないのか、私にはどうにかして見つけることができないようだ.
Heres 私の現在の試み: http://pastebin.com/D4jg7JGV