ВУЗ:
Составители:
Рубрика:
67
Если вы желаете поместить файл модуля с расширением .tpu не в те-
кущей, а в заданной директории, то для этого необходимо выполнить
следующие команды:
F10/Option/Directories/Unit directories {указать путь к директории в
прямоугольнике с таким заголовком}
Ещё один способ создания файла модуля с расширением .tpu (или объ-
ектного модуля) состоит в следующем. Для параметра comile/destination
при
помощи клавиши Enter следует установить значение disk и запустить модуль
на выполнение командой Ctl+F9 (Run). При этом осуществляется компиляция
модуля. Компилятор Turbo Pascal 7.0 распознаёт в начале текста модуля слу-
жебное слово unit и автоматически создаёт файл с расширением .tpu вместо
файла с расширением .exe (как для обычных программ). Сообщение, которое
появится при этом на экране дисплея «can not run unit», просто информирует
вас
о том, что модуль самостоятельно не выполняется.
Построение программ
по модульному принципу
Если программа превышает определённый объём или необходимо что-
бы одновременно несколько человек работало над программой, можно
разбить программу на части. Такое разбиение программы называется по-
строением её по модульному принципу. При этом можно выделить три
ступени:
9 разбиение на модули исходной программы;
9 разбиение на модули программы в объектных кодах;
9 раздельная трансляция модулей исходной программы.
9 Разбиение исходной программы на модули
Это самый простой этап построения программы по модульному прин-
ципу. Исходный текст хранится в нескольких файлах. Это лишь упрощает
работу с редактором текстов программ. В основной программе, являющейся
как бы “каркасом программы”, с помощью директив компилятору “вста-
вить”(Include или Insert) обращаются к подпрограммам. Такая директива в
Турбо Паскале имеет вид
{$I
имя модуля}
68
В результате короткая графическая программа (с использованием гра-
фических стандартных средств) или система управления файлами (со
средствами управления базы данных) оказывается длинной в несколько ты-
сяч строк. И тогда даже самый быстрый компилятор Турбо Паскаля
оказывается не столь уж быстрым.
9 Разбиение на модули объектной программы (оверлей)
Под оверлейным модулем понимают часть программы в объектных ко-
дах, которая загружается в оперативную память лишь на время её обработки.
Путём разбиения объектной программы на оверлейные модули можно до-
биться использования одной и той же области памяти несколькими
модулями поочерёдно. В результате программа, не компилирующаяся цели-
ком в оперативной памяти, будет
работоспособной
В Турбо Паскале версии 3.0 процедуры и функции можно снабжать за-
головком overlay. Такой заголовок означает, что компилятор помещает
объектные коды не в тот файл, в котором записана программа, а в особый, так
называемый оверлейный файл, из которого во время выполнения программы
вызываются отдельные модули. Поскольку в версии 4.0 существует возмож-
ность
раздельной трансляции модулей, формирование оверлейных структур
там не предусмотрено. В версии 5.0 оверлейная структура в форме модулей
вновь существует.
9 Раздельная трансляция исходных модулей
Подлинное разбиение на модули означает, что исходный текст про-
граммы можно компилировать по частям. Тогда после компиляции исходной
программы, содержащей вызовы модулей, компилятор включит их в сгенери-
рованный объектный код. Для этого должны выполняться две предпосылки:
1.
Компилятор должен быть в состоянии оттранслировать исходный
текст, не являющийся полной программой. Такие части программы называ-
ются модулями или units.
2.
Должен иметься компоновщик, который после компиляции програм-
мы, содержащей ссылки на оттранслированные ранее модули и не
являющейся полной программой, добавит эти модули в сгенерированный
объектный код.
Так как компоновщик добавляет объектный код, вовсе не обязательно,
чтобы тот был результатом трансляции написанного на Паскале модуля, т.е.
такие модули можно писать и
на других языках.
Если вы желаете поместить файл модуля с расширением .tpu не в те- В результате короткая графическая программа (с использованием гра-
кущей, а в заданной директории, то для этого необходимо выполнить фических стандартных средств) или система управления файлами (со
следующие команды: средствами управления базы данных) оказывается длинной в несколько ты-
F10/Option/Directories/Unit directories {указать путь к директории в сяч строк. И тогда даже самый быстрый компилятор Турбо Паскаля
прямоугольнике с таким заголовком} оказывается не столь уж быстрым.
Ещё один способ создания файла модуля с расширением .tpu (или объ- � Разбиение на модули объектной программы (оверлей)
ектного модуля) состоит в следующем. Для параметра comile/destination при Под оверлейным модулем понимают часть программы в объектных ко-
помощи клавиши Enter следует установить значение disk и запустить модуль дах, которая загружается в оперативную память лишь на время её обработки.
на выполнение командой Ctl+F9 (Run). При этом осуществляется компиляция Путём разбиения объектной программы на оверлейные модули можно до-
модуля. Компилятор Turbo Pascal 7.0 распознаёт в начале текста модуля слу- биться использования одной и той же области памяти несколькими
жебное слово unit и автоматически создаёт файл с расширением .tpu вместо модулями поочерёдно. В результате программа, не компилирующаяся цели-
файла с расширением .exe (как для обычных программ). Сообщение, которое ком в оперативной памяти, будет работоспособной
появится при этом на экране дисплея «can not run unit», просто информирует В Турбо Паскале версии 3.0 процедуры и функции можно снабжать за-
вас о том, что модуль самостоятельно не выполняется. головком overlay. Такой заголовок означает, что компилятор помещает
объектные коды не в тот файл, в котором записана программа, а в особый, так
Построение программ называемый оверлейный файл, из которого во время выполнения программы
вызываются отдельные модули. Поскольку в версии 4.0 существует возмож-
по модульному принципу
ность раздельной трансляции модулей, формирование оверлейных структур
там не предусмотрено. В версии 5.0 оверлейная структура в форме модулей
Если программа превышает определённый объём или необходимо что- вновь существует.
бы одновременно несколько человек работало над программой, можно � Раздельная трансляция исходных модулей
разбить программу на части. Такое разбиение программы называется по- Подлинное разбиение на модули означает, что исходный текст про-
строением её по модульному принципу. При этом можно выделить три граммы можно компилировать по частям. Тогда после компиляции исходной
ступени: программы, содержащей вызовы модулей, компилятор включит их в сгенери-
� разбиение на модули исходной программы; рованный объектный код. Для этого должны выполняться две предпосылки:
� разбиение на модули программы в объектных кодах; 1. Компилятор должен быть в состоянии оттранслировать исходный
� раздельная трансляция модулей исходной программы. текст, не являющийся полной программой. Такие части программы называ-
ются модулями или units.
� Разбиение исходной программы на модули 2. Должен иметься компоновщик, который после компиляции програм-
Это самый простой этап построения программы по модульному прин- мы, содержащей ссылки на оттранслированные ранее модули и не
ципу. Исходный текст хранится в нескольких файлах. Это лишь упрощает являющейся полной программой, добавит эти модули в сгенерированный
работу с редактором текстов программ. В основной программе, являющейся объектный код.
как бы каркасом программы, с помощью директив компилятору вста- Так как компоновщик добавляет объектный код, вовсе не обязательно,
вить(Include или Insert) обращаются к подпрограммам. Такая директива в чтобы тот был результатом трансляции написанного на Паскале модуля, т.е.
Турбо Паскале имеет вид такие модули можно писать и на других языках.
{$I имя модуля}
67 68
Страницы
- « первая
- ‹ предыдущая
- …
- 32
- 33
- 34
- 35
- 36
- …
- следующая ›
- последняя »
