Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Доступность модуля для программыСодержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте Скопируйте свой новый файл.TPU,.TPW или.TPP в каталог модулей, заданный в диалоговом окне Options¦Directories, или используйте параметр командной строки /U при работе с компилятором режима командной строки. Если вы поместите свой модуль в заданный каталог модулей, то сможете ссылаться на этот модуль, даже если он не находится в текущем каталоге или в библиотеках исполняющей системы. Включите в любую программу, где вы хотите использовать свой новый модуль, оператор uses. Например, если ваш новый модуль называется INTLIB.TPW, то задайте в своей программе оператор следующего вида:
uses IntLib;
Чтобы найти модуль, имя которого указано в операторе uses, Turbo Pascal проверяет его наличие в библиотеке исполняющей системы, загруженной в память в время инициализации. Примечание: О том, как поместить модуль в библиотеку исполняющей системы, рассказывается ниже. Если модуль в библиотеке исполняющей системы отсутствует, то компилятор ищет его на диске, сначала в текущем каталоге, затем в каталогах, заданных в качестве каталогов модулей (Options¦ Directories). Компилятор предполагает, что имя файла совпадает с именем модуля, а расширение имени файла - это.TPU,.TPW или.TPP. Исходный текст модуля имеет расширение.PAS. Пример. Теперь напишем небольшой модуль. Назовем его IntLib и вставим в него две простые подпрограммы для целых чисел - процедуру и функцию:
unit IntLib;
interface procedure ISwap(var I,J: integer); function IMax(I,J: integer): integer; implementation procedure ISwap; var Temp: integer;
begin Temp:= I; I:= J; J:= Temp end; { конец процедуры ISwap } function IMax; begin if I > J then IMax:= I else IMax:= J end; { конец функции IMax } end. { конец модуля IntLib }
Наберите этот модуль, запишите его в файл INTLIВ.PAS, а затем скомпилируйте, задав в качестве целевой платформы защищенный режим DOS. В результате получим код модуля в файле INTLIВ.ТРP. Перешлем его в каталог модулей (если такой имеется), или оставив в том же каталоге, где находится следующая программа, которая использует модуль IntLib:
program IntTest; uses IntLib; var A,B: integer; begin Write('Введите два целочисленных значения: '); Readln(A,B); ISwap(A,B); Writeln('A = ',A,' B = ',B); Writeln('Максимальное значение равно ',IMax(A,B)); end. { конец программы IntTest }
Модули и большие программы До сих пор мы говорили о модулях как о библиотеках - наборах полезных подпрограмм, которые могут использоваться несколькими программами. Однако, у модуля есть еще одна функция - разбивать большую программу на составные части. Два аспекта Turbo Pascal способствуют использованию модулей в такой функции: - высокая скорость компиляции и компоновки; - способность работать с несколькими файлами одновременно, например, с программой и несколькими модулями. Обычно большая программа разбивается на модули, которые группируют процедуры по их функциям. Например, программа редактора может быть разделена на части, выполняющие инициализацию, распечатку, чтение и запись файлов, форматирование и так далее. Так же, как имеется основная программа, определяющая глобальные константы, типы данных, переменные, процедуры и функции, так же может иметь место и "глобальный" модуль, который используется всеми другими модулями. Набросок большой программы-редактора может иметь вид:
program Editor; uses WinCrt, String { стандартные модули из TPW.TPL } EditGlobals, { модули, написанные пользователем } EditInuit, EditPrint, EditRead, EditWrite, EditFormat;
{ описание, процедуры и функции программы } begin { основная программа } end. { конец программы Editor }
Модули в данной программе могут содержаться в TPW.TPL, библиотеке исполняющей системы Windows, или быть отдельными файлами.TPW. В последнем случае Turbo Pascal выполняет за вас управление проектом. Это означает, что при перекомпиляции программы Editor с помощью встроенного в компилятор средства формирования Turbo Pascal сравнивает даты каждого файла.PAS и.TPW и перекомпилирует любой модуль, исходный код которого перекомпилирован. Другая причина использования модулей в больших программах состоит в ограничения кодового сегмента. Процессоры 8086 (и родственные им) ограничивают размер сегмента кода 64 килобайтами. Это означает, что основная программа и любой данный сегмент не может превышать 64К. Turbo Pascal интерпретирует это, создавая для каждого модуля отдельный сегмент кода. Без этого объем кода вашей программы не мог бы превышать 64К.
|
||
|
Последнее изменение этой страницы: 2017-02-19; просмотров: 541; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.214 (0.008 с.) |