私はこのトピックがここやインターネット上の他の場所で取り上げられていることを知っていますが、うまくいけば、私が集会に頭を悩ませようとしているので、質問は単純なものです...
したがって、正しく理解していれば、ebp(ベースポインター)はスタックの一番上を指し、esp(スタックポインター)は一番下を指します-スタックが下に成長するためです。したがって、espは「現在の場所」を指します。したがって、関数呼び出しでは、スタックにebpを保存したら、関数用の新しいスタックフレームを挿入します。したがって、下の画像の場合、N-3から開始した場合は、関数呼び出しを使用してN-2に移動します。しかし、あなたがN-2にいるとき、あなたのebp==25とesp==24ですか(少なくとも最初は、データがスタックに配置される前に)?
これは正しいですか、それとも私はここで接線を外れていますか?
ありがとう!
(出典:wikimedia.org)