этот фрейм стека, который я создал, верно?

В вопросе, который я пишу, у меня есть вопрос о фреймах стека:

Рассмотрим следующую функцию в Nada (выдуманный язык), языке, используемом в лекциях:

function f(x,y)
begin
var z
z := y - x;
return z * z;
end;

Такую функцию можно было бы вызвать следующим образом:

n := f(a+2,b*3)

Используя диаграммы, чтобы проиллюстрировать ваш ответ, объясните последовательность событий, когда выполняется вызов функции выше, показывая, как фрейм стека создается при входе в функцию и уничтожается при выйти из него, и как регистр базового указателя используется при доступе к параметрам x и y и локальной переменной z.

Я ответил на этот вопрос, и это кадр стека, который я создал:

sackframe I produced

Я просто хочу кого-нибудь чтобы исправить это для меня, если что-то не так ... или создать новый кадр стека (если у кого-то есть время). Буду очень признателен за помощь.

8
задан Bill the Lizard 18 September 2012 в 16:59
поделиться