再帰プログラムを非再帰プログラムに変換する方法が理解できません。

たとえば、フィボナッチ数列を再帰的に計算するプログラムを
スタックを使って非再帰的に計算するプログラムが野崎昭弘さんの
本に載っているのですが、何度読んでも理解できません。

どうすれば理解できるようになりますか?