Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь 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; просмотров: 448; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.12.34.211 (0.005 с.) |