На вопросе, который я делаю, у меня есть вопрос по фреймам стека:
Рассмотрим следующую функцию в Nada (выдуманный язык), язык, используемый в лекциях:
function f(x,y)
begin
var z
z := y - x;
return z * z;
end;
Такая функция может быть вызвана так:
n := f(a+2,b*3)
Используя диаграммы, чтобы проиллюстрировать ваш ответ, объясните последовательность событий при выполнении вышеупомянутого вызова функции, показывая, как кадр стека строится при входе в функцию и разрушается при выходе из нее, и как используется регистр базового указателя. при доступе к параметрам x и y и локальной переменной z.
Я ответил на этот вопрос, и это кадр стека, который я создал:
Я просто хочу, чтобы кто-то исправил это для меня, если его части были неправильными ... или создал новый кадр стека (если у кого-то есть время). Я буду очень признателен за помощь.