Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab2_TP.doc
Скачиваний:
2
Добавлен:
06.09.2019
Размер:
170.5 Кб
Скачать

6. Восходящая отладка программ (снизу вверх)

При восходящей отладке на начальном этапе отлаживаются отдельные подпрограммы.

Поскольку подпрограммы самостоятельно выполняться не могут, для каждой из них пишется своя специальная отладочная программа – драйвер, которая, по крайней мере, должна обеспечить подпрограмму входными значениями фактических параметров и вывести выходные значения. После отладки подпрограммы ее драйвер больше не нужен.

На следующем этапе подпрограммы объединяются в блоки, решающие более крупные подзадачи.

В итоге все блоки объединяются в программу, решающую задачу в целом.

II. Контрольные вопросы.

  1. Что называется модулем? Когда используется модуль?

  2. В файлах с какими расширениями находятся текст модуля и оттранслиро­ванный код модуля? На каком этапе модуль подключается к программе?

  3. Назвать составные части модуля. Какое назначение имеет каждая из частей модуля?

  4. Когда выполняется и в каких случаях используется секция инициализа­ции?

  5. Чем отличается статическая переменная от динамической?

  6. Чем отличается статическая структура от динамической?

  7. Что такое «динамическая память»?

  8. Какие существуют предопределенные переменные для отслеживания со­стояния кучи?

  9. Что такое «указатель»? Назвать виды указателей.

  10. Как описать типизированный и нетипизированный указатели?

  11. Какие процедуры существуют для выделения динамической памяти?

  12. Как задать значение указателю?

  13. Что такое «операция разыменования»?

  14. Какие процедуры существуют для освобождения динамической памяти?

  15. Для чего используется процедура Mark?

  16. Можно ли использовать одновременно механизм освобождения памяти с помощью процедур FreeMem, Dispose и Release?

  17. Что представляет собой динамический массив?

  18. Когда возникает необходимость использования средств работы с динами­ческой памятью при обработке массивов?

  19. Что означает «восходящая отладка программ»?

III. Последовательность выполнения индивидуального задания.

1. Постановка задачи

Согласно индивидуальному заданию, используя восходящую разработку, разработать программу обработки динамического массива.

2. Входные данные

Описать, согласно индивидуальному заданию.

3. Выходные данные

Описать, согласно индивидуальному заданию.

4. Схема решения, алгоритм, программа

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

В зависимости от индивидуального задания задача разбивается на под­задачи, разрабатываются алгоритмы подпрограмм обработки, которые пред­ставляются в виде блок-схем.

Реализация программы должна быть сделана на языке PASCAL.

5. Драйверы запуска подпрограмм

Программы-драйверы должны обеспечить подпрограммы обработки массива входными значениями фактических параметров и вывести выходные значения.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]