Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование - 10 - Модули.doc
Скачиваний:
10
Добавлен:
09.03.2016
Размер:
126.98 Кб
Скачать

8

10 Модули

10.1 Что такое модуль

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

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

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

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

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

Модуль компилируется в файл с расширением .tpu.

10.2 Стандартные модули

В Паскале имеется 8 стандартных модулей:

  • System

  • Dos

  • Crt

  • Printer

  • Graph

  • Overlay

  • Turbo3

  • Graph3.

Модули Graph,Turbo3иGraph3 выделены в отдельныеtpu-файлы, а остальные входят в состав библиотечного файлаTurbo.tpl. Лишь модульSystemподключается к любой программе автоматически, все остальные становятся доступны только после указания их имен разделеUses.

Назначение стандартных модулей:

  • в модуль Systemвходят все процедуры и функции стандартного языка программирования Паскаль, а также встроенные процедуры и функции, которые не вошли в другие стандартные модули;

  • модуль Printerделает доступным вывод текстов на принтер;

  • в модуле Crtсосредоточены процедуры и функции, обеспечивающие управление текстовым режимом работы экрана;

  • модуль Graphсодержит большой набор типов, констант, процедур и функций для управления графическим режимом работы экрана;

  • в модуле Dosсобраны процедуры и функции, открывающие доступ программам к средствам дисковой операционной системыMs-Dos;

  • модуль Overlayиспользуется при разработке громоздких программ с перекрытиями;

  • модули Turbo3иGraph3введены для совместимости с ранней версией 3.0 системыTurboPascal.

10.3 Структура модуля

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

UNIT имя_модуля ; {заголовок модуля }

{ $директивы_компилятора }

INTERFACE {интерфейсная часть: открытые описания }

Uses . . . ; { имена подключаемых модулей }

Const . . . ; { раздел описания констант }

Type . . . ; { раздел описания типов }

Var . . . ; { раздел описания переменных }

Procedure имя ( параметры ) ; { заголовки процедур }

. . .

Function имя ( параметры ) : тип_результата ; { заголовки функций }

. . .

IMPLEMENTATION {исполняемая часть: зарытые описания}

Uses . . . ;

Const . . . ;

Type . . . ;