Студопедия — End start
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

End start






 

Результат работы программы:

 

 

 

Адрес возврата из функции (адрес команды ret) процессор запоминает в стеке, записывая в него содержимое счетчика команд (EIP). Затем в EIP заносится первая команда из процедуры, в нашем примере AddDigs. Как только процессор встречает в теле процедуры команду возврата ret, он обращается к стеку, извлекая из него адрес следующей выполняемой после call команды, в нашем случае команды возврата ret в тело основной программы.

Если вызывается много процедур, при этом вызываемая процедура, вызывает следующую процедуру и т.д., то использование стека очень удобно. Использование стека при таких множественных вызовах представлено на рисунке представленном на следующей странице.

На рисунке…. стек для удобства показан в виде стопки, куда помещаются адреса возвратов. Заметим, что стек растет в сторону уменьшения адресов. Команда call помещает адрес возврата в стек и уменьшает на 4 содержимое регистра esp (указателя вершины стека). Поэтому новый адрес возврата оказывается на вершине стека, что позволяет осуществить последовательное возвращение в тело основной программы.

 

Рис. Использование стека при вызове функций

Пример передачи параметров через стек.

.586







Дата добавления: 2014-11-10; просмотров: 541. Нарушение авторских прав; Мы поможем в написании вашей работы!



Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

ИГРЫ НА ТАКТИЛЬНОЕ ВЗАИМОДЕЙСТВИЕ Методические рекомендации по проведению игр на тактильное взаимодействие...

Реформы П.А.Столыпина Сегодня уже никто не сомневается в том, что экономическая политика П...

Виды нарушений опорно-двигательного аппарата у детей В общеупотребительном значении нарушение опорно-двигательного аппарата (ОДА) идентифицируется с нарушениями двигательных функций и определенными органическими поражениями (дефектами)...

Понятие о синдроме нарушения бронхиальной проходимости и его клинические проявления Синдром нарушения бронхиальной проходимости (бронхообструктивный синдром) – это патологическое состояние...

Опухоли яичников в детском и подростковом возрасте Опухоли яичников занимают первое место в структуре опухолей половой системы у девочек и встречаются в возрасте 10 – 16 лет и в период полового созревания...

Способы тактических действий при проведении специальных операций Специальные операции проводятся с применением следующих основных тактических способов действий: охрана...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия