рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Процес виклику підпрограми. Програмний стек

Процес виклику підпрограми. Програмний стек - раздел Компьютеры, Процедури без параметрів Під Час Виклику Підпрограми Їй Передається Керування. По Завершенні Роботи Во...

Під час виклику підпрограми їй передається керування. По завершенні роботи вона повертає керування програмі, що її викликала, у ту точку, із якої виклик було здійснено. Перша команда підпрограми називається точкою входу, а адреса такої команди - адресою точки входу. Оператор, що продовжує виконання програми по завершенні роботи підпрограми, називається точкою повернення із підпрограми.

Коли здійснюється виклик підпрограми, точка повернення з неї запам'ятовується і зберігається до завершення роботи цієї підпрограми. Для збереження точки повернення використовується ділянка оперативної пам'яті. Крім того, під час виклику підпрограми певні ділянки пам'яті зіставляються з її параметрами та локальними змінними. Сукупність усіх цих ділянок пам'яті називається локальною пам'яттю підпрограми. Якщо підпрограма є функцією, то до її локальної пам'яті додається ділянка для збереження значення, яке функція повертає. Ця ділянка ставиться у відповідність до імені функції.

Сформулюємо алгоритм виклику підпрограми.

1. Для підпрограми виділяється локальна пам'ять.

2. В локальній пам'яті обчислюється й запам'ятовується точка повернення з підпрограми.

3. Обчислюються значення аргументів, що відповідають параметрам-значенням, і адреси аргументів, що відповідають параметрам-змінним. Здійснюється підстановка аргументів.

4. Виконуються оператори тіла підпрограми. Якщо підпрограма є функцією, то у локальній пам'яті запам'ятовується значення, яке функція повертає.

5. Здійснюється повернення з підпрограми. Якщо підпрограма є функцією, то з локальної пам'яті підпрограми до сегмента даних копіюється значення, яке функція повергає. Управління передається команді, що адресується точкою повернення з підпрограми.

6. Ділянка оперативної пам'яті, що була задіяна під локальну пам'ять, вважається вільною.

Виконання основної програми починається після завантаження її коду в опе­ративну пам'ять комп'ютера. При цьому відбувається виділення пам'яті для її змінних. Ці змінні доступні з програми протягом усього часу її виконання, і тому називаються статичними. Область пам'яті, що виділяється під програму та її змінні, також називається статичною. Під час виконання викликів підпрограм пам'ять виділяється та звільняється автоматично, без явних вказівок у програмі.

Виділення та звільнення ділянок пам'яті під час виконання викликів підпрограм відбувається за принципом «останнім прийшов — першим пішов». Якщо складати книжки в стопку і брати їх тільки зверху, то книжка, що потрапила у стопку останньою, забирається першою. Така стопка називається стеком (stack). Тому автоматична пам'ять, що виділяється для підпрограм, програм називається ще програмним стеком.

– Конец работы –

Эта тема принадлежит разделу:

Процедури без параметрів

Підпрограми їх різновиди та способи використання... Процедури користувача... Процедури без параметрів...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Процес виклику підпрограми. Програмний стек

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Підпрограми, їх різновиди та способи використання
Підпрограма - це іменована частина програми, котра описує деякі об­числення і може бути викликана з будь якого місця програми, де синтаксисом мо­ви це не заборонено. Для багаторазового викон

Процедури користувача
Із прикладами процедур і функцій ми вже зустрічалися - це стандартні процедури введення-виведення read, write, математичні функції, наприклад sin(x), trunc(x) тощо. Вони

Процедури без параметрів
Оголошення процедури або функції записується в розділі оголошень програми і має таку саму структуру, як і вся програма, за винятком крапки наприкінці, замість якої використовується крапка з комою.

Процедури з параметрами
В ідеальній ситуації загальновідомим є лише заголовок підпрограми, а її внутрішня будова залишається прихованою від розробників інших підпрограм, програм або модулів. Для модифікації значення змінн

Локалізація імен
Кожний ідентифікатор у програмі характеризується областю дії імені або областю видимості. Область видимості ідентифікатора - це область програми, в якій можна посилатися на даний ідентифікатор. У м

Різновиди параметрів
Область оперативної пам'яті, що її використовує програма, поділяється на сегмент коду, сегмент даних та сегмент стеку. В сегменті коду (64 Кбайт) зберігаються команди програми, в сегменті даних (64

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги