Выбрать главу

Д. Б. Поляков, И.Ю. Круглов

Программирование в среде Турбо Паскаль

(версия 5.5)
Москва
Издательство МАИ
А/О «РОСВУЗНАУКА»
1992

Рецензенты:

доктор технических наук профессор В.А.ИВАНОВ,

кандидат технических наук Ю.Н.СТЕПАНОВ

От авторов

Авторам этой книги хорошо известен информационный «голод», который сопутствует освоению сначала персональной ЭВМ (ПЭВМ), потом ее программных средств. С ростом парка ввезенных и произведенных в нашей стране ПЭВМ стал ощущаться острый недостаток специальной литературы. Как следствие этого, колоссальное время тратится на накопление опыта работы с ПЭВМ, освоение «вслепую» сложных программных продуктов, особенно трансляторов с языков высокого уровня. В силу специфики распространения программ их оригинальные описания — почти «букинистическая редкость», что часто приводит к ситуации, когда богатейшие возможности ПЭВМ остаются практически невостребованными. Эта книга — попытка помочь тем, кто собирается освоить язык и систему программирования Турбо Паскаль версии 5.5, созданные американской фирмой Borland International. Книга предназначена в первую очередь пользователям ПЭВМ, знакомым в той или иной степени с основами языка Паскаль. Книга не должна показаться сложной и тем, кто имеет опыт работы с Бейсиком, Си или каким-либо другим процедурным языком. Авторы старались наиболее полно изложить язык Турбо Паскаль, подчеркнуть практические стороны и особенности его применения, а также привести различные приемы программирования на нем.

Хотя имеется несколько версий Турбо Паскаля, изложение материала привязано к версии языка 5.5, последней в момент написания книги. Версия 5.5 отличается от версии 5.0 тем, что расширен синтаксис языка (введена возможность объектно-ориентированного программирования) и модифицирован системный модуль Overlay. По сравнению же с версией 4.0 произошли большие изменения (исчезли цепочки, появились оверлеи, расширились наборы процедур и т.п.) Многое из того, что верно для Турбо Паскаля версии 3.0 (а именно для нее написано огромное число книг по Турбо Паскалю за рубежом и подавляющее число у нас), совершенно не годится для последующих версий. Все сказанное можно отнести и к интегрированной среде программирования.

Авторы не проводили специального тестирования, но с большой вероятностью та часть книги, которая касается самого языка (без объектного программирования) и работы в среде MS-DOS, не будет бесполезной и для работающих с системой Quick Pascal 1.0 фирмы Microsoft.

- 4 -

Изложение ведется для операционной системы (ОС) MS-DOS, но подразумевается работа в среде любой совместимой с ней ОС, в том числе PC-DOS, АДОС, Альфа-ДОС и т.п. Несколько слов о многочисленных примерах и тестах по ходу изложения материала. Авторы старались приводить нетривиальные примеры, которые могли бы иметь самостоятельную ценность или хотя бы быть полезными читателю. Однако возможности протестировать их всех в различных версиях ОС (от 2.0 до 4.01 их слишком много!) и на различных моделях ПЭВМ не было. Примеры проверены в среде MS-DOS 3.20 и 3.30 (наиболее распространенных на момент написания книги) на ПЭВМ с высокой степенью совместимости с IBM PC/XT, AT/16 МГц и на IBM PS/2 (модель 50).

Поскольку авторам неизвестно об адаптации пакетов Турбо Паскаль версии 5.0 или 5.5 для использования на ПЭВМ ЕС или «Искра» и из-за отличия этих машин от стандарта IBM (особенно в блоке клавиатуры), нельзя с полной уверенностью адресовать эту книгу пользователям именно этих машин. Авторы ориентировались на пользователей пакетов, работающих на импортных ПЭВМ, количество которых в стране весьма значительно. Вследствие этого сохранены английские названия служебных клавиш и английский синтаксис команд ОС и самой среды Турбо Паскаль.

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

В заключение авторы выражают признательность коллегам: А.Ю. Самсонову за помощь при написании главы «Объектно-ориентированное программирование», Г.П. Шушпанову за ценный вклад в создание главы «Ссылки, динамические переменные и структуры данных» и ряда практических примеров, а также Н.А. Семеновой и Н.А. Калитиной, напечатавшим весь текст книги.

Часть 1 этой книги написана И.Ю. Кругловым. Он же является автором глав 19 и 22. Части 2 и 3, а также главы 15, 16, 20 и 21 написаны Д.Б. Поляковым. Совместно подготовлены введение, главы 17, 18 и приложения.

При изготовлении файла использован (исправлено, дополнено) сайт http://www.life-prog.ru/2_23369_glava--integrirovannaya-sreda.html.

w_cat.

Введение

Система программирования Турбо Паскаль (версия 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), включая возможность загрузки оверлея в нее, и использование этой памяти интегрированной средой программирования Структура книги такова, что читая ее, можно постепенно начинать работу с системой Турбо Паскаль, с каждым разделом усваивая новые понятия.

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

Изложение ведется применительно к работе в интегрированной среде программирования. Автономные компилятор и сопутствующие утилиты из-за ограниченности объема книги практически не рассматриваются. Авторы не видят в этом особой необходимости, поскольку работа этих программ дублирует практически все функции интегрированной среды.