Введение
Система программирования Турбо Паскаль (версия 5.5) в состоянии удовлетворить практически любые требования при работе на ПЭВМ IBM PC и совместимых с ними. Язык Турбо Паскаль является структурированным языком высокого уровня, на котором можно написать программу практически неограниченного размера и любого назначения. Описываемая версия Турбо Паскаля представляет собой полную среду для профессионального программирования, обладающую очень высокими характеристиками. Среди них:
— совместимость со стандартом ANSI Pascal;
— наличие системных библиотечных модулей, являющихся органической составляющей языка (System, DOS, CRT, Graph и др.);
— расширение языка, превращающее его в инструмент объектно-ориентированного программирования (ООП);
— наличие новых встроенных процедур и функций (в том числе Inc и Dec);
— наличие версий компилятора, как встроенного в интегрированную среду программирования, так и автономного (для трансляции программ большого размера);
— высокая скорость компиляции ;
— генерация оптимизированного кода, обеспечивающая быстрое выполнение программ; — редактор связей, удаляющий неиспользуемые части кода на этапе компиляции (создается код минимального размера);
— возможность создания отдельно компилируемых блоков; — возможность условной компиляции программ;
— поддержка математических сопроцессоров 80X87 (8087, 80287);
— наличие расширенного набора числовых целых типов и типов данных с плавающей запятой стандарта IEEE (с одинарной точностью, с двойной точностью, с повышенной точностью) в случае использования сопроцессоров 80X87.
Кроме того, в системе реализованы следующие возможности:
— эффективный интерфейс с языками Turbo Assembler и Turbo С на уровне объектного кода;
- 6 -
— интегрированный отладчик на уровне исходного текста, обеспечивающий полную проверку переменных, структур данных и выражений по шагам или в заданных точках программы и присваивание новых значений переменным и структурам данных в процессе отладки;
— полная эмуляция операций с плавающей запятой сопроцессоров 80X87, позволяющая использовать типы данных в формате с плавающей запятой (IEEE) даже при отсутствии сопроцессоров 80X87;
— использование оверлеев на основе программных модулей, а также развитая подсистема управления оверлеями, дающая возможность управлять размещением их в памяти;
— поддержка средств расширенной памяти (EMS), включая возможность загрузки оверлея в нее, и использование этой памяти интегрированной средой программирования Структура книги такова, что читая ее, можно постепенно начинать работу с системой Турбо Паскаль, с каждым разделом усваивая новые понятия.
В книге рассматриваются как вопросы использования стандартных процедур и функций языка Турбо Паскаль, так и методы создания собственных. Приведено достаточное количество примеров использования стандартных и специфических средств ПЭВМ. Книга имеет такую структуру, что ее можно использовать в качестве справочника по языку и системе программирования.
Изложение ведется применительно к работе в интегрированной среде программирования. Автономные компилятор и сопутствующие утилиты из-за ограниченности объема книги практически не рассматриваются. Авторы не видят в этом особой необходимости, поскольку работа этих программ дублирует практически все функции интегрированной среды.
Приступая к чтению, необходимо иметь представление о принципах работы ПЭВМ фирмы IBM (и совместимых с ними) под управлением ОС MS-DOS; знать, как запускаются на выполнение программы, как копируются и удаляются файлы и как используются другие базовые команды ОС. Если нет уверенности в своих знаниях, советуем потратить некоторое время на освоение компьютера и просмотреть книги по ОС MS-DOS. Для понимании общей идеологии построения системы сначала кратко рассмотрим функции ее составных частей. Пакет Турбо Паскаль содержит в себе два компилятора: автономный и встроенный в интегрированную среду программирования.
- 7 -
Интерактивная интегрированная среда программирования сочетает возможности редактора текстов, компилятора и отладчика. Она поддерживает систему меню, оконный интерфейс, управление конфигурацией системы и контекстную систему подсказки (см. часть 1 «Работа в среде программирования Турбо Паскаль»). Сама среда программирования включается запуском файла TURBO.EXE.
При работе в автономном режиме компиляции (с использованием командной строки или командных файлов) для создания и изменения исходного текста программы можно использовать любой текстовый редактор. После этого нужно запустить автономный компилятор с помощью команды MS-DOS или командного файла, задав имя файла программы, написанной на Турбо Паскале, и режимы компиляции (см. Приложение 2). Этот компилятор представлен файлом ТРС.ЕХЕ.
Встроенный отладчик позволяет легко выполнять программы по шагам, проверяя или модифицируя при этом переменные и ячейки памяти, устанавливая точки останова и прерывая выполнение программы с помощью специальной комбинации клавиш (CtrH-Break). Развитием принципов структурного программирования является введение в Турбо Паскаль понятия модуля. Модуль представляет собой часть исходного текста, которую можно откомпилировать как самостоятельное целое. Его можно рассматривать как библиотеку данных и программного кода. Модули обеспечивают описание интерфейса между своими процедурами и данными и другими программами, которые используют эти модули. Они могут применяться в программах, а также в других модулях. Подробно обо всем этом рассказывается в разд. 6.10 «Модули. Структура модулей». В системе Турбо Паскаль имеются стандартные библиотеки, которые оформлены в виде таких модулей. Они содержат процедуры различного функционального назначения:
SYSTEM — стандартные процедуры языка;
DOS — работа с функциями ОС MS-DOS;
CRT — работа с клавиатурой и дисплеем;
PRINTER — легкий доступ к принтеру;
GRAPH — графические процедуры;
OVERLAY — поддержка и администрирование оверлейных структур;
TURB03 — обеспечение совместимости с версией языка 3.0;
GRAPH3 — графические процедуры, реализованные в версии языка 3.0.
- 8 -
К этому списку можно добавить весьма полезный модуль, представленный в исходном пакете системы, но не описанный в ее руководстве: WIN — быстрая и удобная работа с окнами.
Все эти модули (кроме TURB03 и GRAPH3) рассматриваются в дальнейшем в разделах, носящих соответствующие названия. Модули, обеспечивающие совместимость с Турбо Паскалем версии 3.0 нужны только тем, кто имеет богатую библиотеку текстов программ именно для этой версии. Во всех остальных случаях они мало интересны, поскольку не предлагают ничего нового в основной набор средств языка.
В состав системы программирования входит ряд автономных программ-утилит: TPUMOVER, MAKE, TOUCH, BINOBJ, THELP и GREP. Их использование сильно сокращает рутинную, а в некоторых случаях и невыполнимую иным способом, работу по администрированию библиотеки, автономной компиляции, преобразованию файлов и их сравнению. Краткое их описание содержится в Приложении 4 (описание утилиты THELP см. в разд. 1.4 «Интерактивная справка»).