Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по Паскалю.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
2.06 Mб
Скачать

2.3.7. Меню опции tools

MESSAGES. Активизирует окно сообщений. Окно сообщений содержит вывод инструментальных программ типа GREP и позволяет использовать эти сообщения для поиска нужных фрагментов в текстах программ. Для поиска фрагмента подведите цветной указатель окна Messages к нужному сообщению и нажмите Пробел или дважды щелкните по этому сообщению мышью. Среда отыщет и покажет файл с нужным фрагментом текста программы.

GO TO NEXT. Ищет фрагмент, заданный следующим сообщением в окне Messages. Закрывает окно Messages, открывает нужный файл и позиционирует курсор на строку, соответствующую следующему по отношению к текущему (т.е. выделенному цветом) сообщению в окне. Опция вызывается непосредственно из окна редактора клавишами Alt-F8.

GO TO PREVIOUS. Ищет фрагмент, заданный предыдущим сообщением в окне Messages. Опция вызывается непосредственно из окна редактора клавишами «Alt-F7».

GREP. Инициирует работу утилиты GREP. В строке Enter program arguments диалогового окна опции необходимо перечислить аргументы вызова GREP: имена процедур, функций, переменных, которые необходимо отыскать в текстовых файлах, а также имена этих файлов. По умолчанию параметром вызова GREP указывается «*. PAS», что означает поиск по всем PAS-файлам текущего каталога. Если к моменту вызова опции текстовый курсор стоял на некотором имени процедуры, функции или переменной, это имя появится в качестве аргумента вызова перед «*. PAS». После нажатия Enter GREP начнет поиск имени во всех файлах. В окне Messages появятся сообщения GREP с указанием имени файла, номера строки и фрагмента текста программы, где было найдено нужное имя. Опция вызывается непосредственно из окна редактора клавишами «Shift-F2».

2.3.8. Меню опции options

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

Опция Force far calls определяет генерацию машинного кода, рассчитанного на дальнюю модель памяти. В соответствии с архитектурой центрального процессора ПК могут использоваться две модели вызова процедур и функций: ближняя (NEAR) и дальняя (FAR). Ближняя модель обеспечивает адресацию в пределах текущего сегмента, дальняя используется для организации межсегментных связей. Если опция установлена в активное состояние, все вызовы процедур и функций будут использовать дальнюю (межсегментную) модель, в противном случае – ближнюю (внутрисегментную) модель. Ближняя модель дает более экономный код программы и исполняется быстрее, однако при организации оверлея и вызове из программы других программ с помощью процедуры ЕХЕС нужно использовать дальнюю модель.

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

Рис. 2.8. Диалоговое окно опции Options/Compiler

Опция Word align data определяет способ выравнивания переменных и констант в памяти: если опция активна, каждая переменная и константа начинается в байте с четным адресом, т.е. выравнивается на начало машинного слова, если неактивна, переменные и константы располагаются в памяти сплошной цепочкой. Выравнивание по словам увеличивает скорость выполнения программ ценой несколько неэкономного расходования памяти.

В активном состоянии опцией Range checking генерируется дополнительный код для проверки возможного выхода значений переменных за границы диапазона. Программа, откомпилированная с активной опцией, занимает несколько больший объем памяти и исполняется медленнее, зато дает возможность контролировать выход индексов за пределы, определенные в описании массивов.

Опция Stack checking аналогична опции Range checking и контролирует возможное переполнение программного стека.

Опция I/O checking используется для включения/отключения генерации программных кодов, контролирующих правильность операций ввода-вывода.

Установка в неактивное состояние опции Strict var-strings позволяет отказаться от проверки на совпадение длины формального и фактического параметра-строки при обращении к процедуре или функции. Если установлено активное состояние этой опции, компилятор вставляет в программу команды для сравнения длины строк.

В активном состоянии опции Complete boolean eval все логические выражения вычисляются в программе полностью, в неактивном состоянии вычисление прекращается в тот момент, когда становится ясен окончательный результат.

Активное состояние опции Extended syntax дает возможность использовать в программе расширенный синтаксис Турбо Паскаля, который разрешает вызывать определенные программистом функции не только в выражениях, но и в виде отдельного оператора, подобно вызову процедуры. Эта опция не распространяется на стандартные функции.

Опция 8087/80287 ориентирует компилятор на работу с арифметическим сопроцессором. При неактивном состоянии все операции с вещественными данными реализуются программно, и в программе разрешается использовать только один вещественный тип REAL. Если опция установлена в активное состояние, компилятор будет создавать код, содержащий обращения к числовому сопроцессору, причем программе становятся доступны также типы SINGLE, DOUBLE, EXTENDED и СОМР.

Опция Emulation указывает компилятору, надо ли создавать такой код программы, который будет одинаково пригоден при работе на ПК с арифметическим сопроцессором или без него. Программа сама определит наличие сопроцессора и, если он имеется, будет использовать все его возможности; если же сопроцессора нет, его работа будет эмулироваться программно. В этом случае программе становятся доступны все вещественные типы. Активное состояние этой опции увеличивает размеры программы за счет подключения процедур эмуляции, но делает ее независящей от аппаратных особенностей ПК. Опция Emulation игнорируется, если неактивна опция 8087/80287.

Активное состояние опции Debug information устанавливает режим генерации отладочной информации в процессе компиляции программы. Отладочная информация представляет собой специальные таблицы, позволяющие установить однозначную связь между операторами исходного текста программы и теми кодами, которые порождает компилятор. Только после компиляции с активной опцией Debug information становится возможной автоматическая локализация ошибки периода исполнения, а также пошаговая отладка программы. Активное состояние опции увеличивает размер ТРU-файлов и объем оперативной памяти, занимаемой программой, если она работает под управлением среды Турбо Паскаля, но не влияет на размер той же программы, запускаемой вне среды под управлением ДОС. Иными словами, дополнительные таблицы отладки загружаются в память только средой Турбо Паскаля, а ДОС игнорирует эту информацию.

Опция Local symbols аналогична опции Debug information и относится к именам локальных и глобальных переменных: если опция установлена в активное состояние, среда получит возможность доступа на этапе отладки к переменным по их именам.

В поле Conditional defines Вы можете задать условия, которые используются в операторах условной компиляции.

MEMORY SIZES. В диалоговом окне опции OPTIONS/MEMORY SIZES используются три поля ввода. С их помощью можно регулировать размеры памяти, которую занимает работающая программа:

  • Stack size – размер программного стека; по умолчанию 16384 байта, максимум – 65535 байт;

  • Low heap limit – минимальный размер кучи; по умолчанию 0;

  • High heap limit – максимальный размер кучи; по умолчанию 655360 байт; этот параметр не может быть меньше параметра Low heap limit.

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

LINKER. В диалоговом окне этой опции имеются две группы переключаемых опций, с помощью которых регулируется режим работы компоновщика Турбо Паскаля: опции группы Map file управляют выходным документом компоновщика, опции группы Link buffer – использованием памяти. Выходной документ компоновщика (карта распределения памяти) бывает полезен при отладке программы с помощью внешнего отладчика. Опция Off запрещает формирование карты. Опция Segments формирует сегментную карту с указанием адреса запуска программы и сообщениями об ошибках периода компоновки программы. Опция Public дает такую же карту, как и опция Segments, и дополнительно приводит список внешних символов в алфавитном порядке. Наконец, опция Detailed дает полную карту распределения памяти. Опция Memory предписывает компоновщику использовать оперативную память для размещения своих таблиц и временного хранения компонуемой программы, при активной опции Disk компоновщик для этих целей использует пространство диска. Если активна опция Memory, компоновщик будет работать значительно быстрее, однако при разработке крупных программ ему может не хватить оперативной памяти и он не скомпонует программу.

Турбо Паскаль 7.0 включен в комплект поставки более мощной системы программирования Borland Pascal with objects 7.0. Входящая в эту систему среда программирования ВР использует расширенную память для размещения таблиц компилятора и компоновщика. В то же время язык Турбо Паскаля представляет собой подмножество языка ВР, что дает возможность компилировать программы Турбо Паскаля без какой-либо их переделки в среде ВР.

DEBUGGER. Эта опция определяет используемый отладчик и режим обновления экрана дисплея в процессе отладки.

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

При активизации опции Standalone к ЕХЕ-файлу программы будут добавлены соответствующие таблицы, которые позволят вести отладку программы вне среды Турбо Паскаля с помощью внешнего отладчика TD.EXE. Три других опции сообщают среде, в каких случаях следует переключать экран с воспроизведения окна редактора на окно программы.

В режиме Smart среда будет переключать экран по мере надобности – только если в очередном операторе программы было обращение к экрану для вывода или к клавиатуре для ввода. Переключение на окно программы будет также и тогда, когда отладчик «перескакивает» через вызов процедуры (функции) по клавише F8, но в этой процедуре (функции) есть обращение к экрану.

Если установлен режим Always, переключение будет происходить перед исполнением любого оператора программы.

Наконец, в режиме None среда никогда не переключает экран, даже если он требуется для вывода данных, т.е. вывод программы будет накладываться на текст программы. Испорченный в результате такого прогона текст в окне редактора можно обновить с помощью опции Window/Refresh display.

DIRECTORIES. Четыре поля ввода в диалоговом окне опции OPTIONS /DIRECTORIES позволяют определить четыре группы функциональных каталогов Турбо Паскаля.

EXE & TPU directories указывает тот каталог, в который будут помещаться готовые к работе программы в виде EXE-файлов и результат компиляции модулей в виде TPU-файлов. Если каталог не указан, эти файлы будут помещаться в текущий каталог – именно такое состояние этой опции соответствует стандартной настройке среды. Не рекомендуется устанавливать в этой опции каталог, содержащий файлы системы Турбо Паскаль.

Include directories – здесь следует перечислить те каталоги, в которых Турбо Паскаль будет искать включаемые файлы, т.е. файлы, задаваемые директивой компилятору {$1 <имя файла>). При указании нескольких каталогов, они перечисляются через точку с запятой. Отметим, что поиск в этих каталогах идет только в том случае, если включаемый файл не найден в текущем каталоге.

Unit directories – задает каталоги, в которых среда ищет TPU-файлы, если они не обнаружены в текущем каталоге. В этой опции обычно указывается каталог, содержащий файл GRAPH.TPU (если в программе используются графические средства Турбо Паскаля), а также каталог, указанный в поле EXE & TPU directories. При перечислении нескольких каталогов они разделяются точкой с запятой.

Если в своей программе используются внешние процедуры и функции они должны быть представлены в виде OBJ-файлов. Поле Object directories задает один или несколько каталогов, в которых Турбо Паскаль будет искать эти файлы, если их нет в текущем каталоге.

ENVIRONMENT. При вызове этой опции разворачивается еще одно дополнительное меню, содержащее пять опций. Эти опции описываются ниже.

ENVIRONMENT/Preferences. Диалоговое окно этой опции показано на рис. 2.9.

Опции группы Screen sizes определяют размер текстового экрана: если активна опция 25 lines, на экране будет 25 строк, если активна опция 43/50 lines, на экране будет 43 или 50 строк в зависимости от того, оснащен ли Ваш ПК дисплеем с адаптером EGA или VGA. Опции Source tracking определяют способ использования текущего окна редактора в процессе отладки. Если активна опция New window, прослеживаемая программа будет загружаться в новое окно редактора (если, разумеется, она еще не загружена в одно из ранее открытых окон), если активна опция Current window, – в текущее окно.

Рис. 2.9. Диалоговое окно опции Options/Environment/Preferences

Группа опций Auto save регулирует запись на диск текущей программы и информации о ней. Опция Editor flies предписывает автоматически сохранять на диске содержимое всех окон редактора перед прогоном программы, если только текст в окне изменялся после последней записи на диск.

Опция Environment задает режим автоматического сохранения текущей настройки среды Турбо Паскаля в файле конфигурации TURBO.TP. Настройка среды будет сохранена автоматически при временном или окончательном выходе из Турбо Паскаля, если она изменилась с момента последней записи в этот файл. Активное состояние опции Desktop требует от среды автоматически сохранять на диске в файле TURBO.DSK информацию об открытых окнах, их размерах, контрольных точках и т.п.

Группа опций Desktop file уточняет режим создания файла TURBO.DSK: если выбрана опция None, файл не будет создаваться, даже если опция Desktop активна; опция Current directory определяет размещение этого файла в текущем каталоге, а опция Configfile directory - в том же каталоге, где размещается конфигурационный файл TURBO.TP.

ENVIRONMENT/Editor. Диалоговое окно этой опции показано на рис. 2.10.

Активное состояние опции Create backup files заставит среду при записи файла с текстом программы проверить, существует ли уже одноименный файл; если существует, он будет переименован в файл с тем же именем и расширением ВАК, что позволит иметь на диске предыдущую версию только что сохраненной информации.

Puc. 2.10. Диалоговое окно опции Options/Environment/Editor

Опция Insert mode указывает на основной режим работы редактора: если она активна, редактор работает в режиме вставки, неактивна в режиме замены.

Активизация опции Autoindent mode облегчит выделение отступами условных и составных операторов, так как в этом случае каждая новая строка будет начинаться с таким же отступом от левого края экрана, что и предыдущая строка. Опция Use tab characters определяет использование символов табуляции: если она активна, нажатие на клавишу табуляции вставит в текст специальный символ табуляции, если неактивна, в текст будет вставлено нужное число пробелов.

Дополнительно к этому активная опция Optimal fill заставит редактор вставлять минимально возможное число символов табуляции и пробелов при нестандартной длине табуляционного интервала (не 8 символов).

Активная опция Backspace unindents связывает с клавишей Backspace функции уничтожения предыдущего символа с учетом автоотступа: если слева от курсора нет ни одного значащего символа, нажатие на Backspace сдвинет курсор к позиции предыдущего автоотступа. Обычно эта опция устанавливается в активное состояние одновременно с опцией Autoindent mode.

Опция Cursor through tabs определяет перемещение курсора по строке при нажатии клавиши смещения курсора влево или вправо: если она активна, курсор смещается скачком всякий раз, когда в строке встречается символ табуляции; при неактивной опции он всегда смещается только на одну позицию. В поле Tab size Вы можете задать длину табуляционного интервала.

ENVIRONMENT/Mouse. Группа опций Right mouse button определяет способ использования правой кнопки мыши в сочетании с нажатой и удерживаемой клавишей Ctrl:

Опция

Функция правой кнопки

Nothing

Нажатие на кнопку игнорируется

Topic search

Эквивалент действию опции Help/Topic search

Goto cursor

Эквивалент действию опции Run/Go to cursor

Breakpoint

Включает/отключает контрольную точку

Evaluate

Эквивалент действию опции Debug/Evaluate

Add watch

Эквивалент действию опции Debug/Add watches

При обращении к справочной службе в тексте могут встретиться ссылки на другие разделы справочных сообщений. Эти ссылки выделяются в справочном сообщении цветом (в стандартной настройке – это яркий желтый цвет). Соответствующие справки можно вызвать с помощью мыши: нужно установить указатель на ссылку и дважды подряд нажать левую кнопку мыши. Поле Mouse double click в диалоговом окне опции Environment/Mouse используется для регулирования промежутка времени, в течение которого два нажатия воспринимаются как одна команда: для увеличения интервала установите указатель мыши ближе к правой границе поля и нажмите левую кнопку.

Переключаемая опция Reverse mouse buttons используется для реверсирования функции кнопок мыши: при ее активизации нажатие на левую кнопку воспринимается средой как нажатие на правую кнопку, и наоборот. Эта опция может быть полезна в том случае, если Вам удобнее работать с мышью левой рукой.

ENVIRONMENT/Startup. На рис. 2.11 показан вид диалогового окна этой опции.

С помощью опции Dual monitor support можно сообщить среде, что Ваш ПК оснащен двумя дисплеями. После активизации этой опции на дополнительный дисплей будет выводиться окно прогона программы.

Опция Graphics screen save обеспечивает сохранение в оперативной памяти ПК копии графического экрана. Эту опцию следует активизировать, если разрабатываеть (и отлаживаеть в среде Турбо Паскаля) программу, использующую графические средства ПК. При активизации этой опции можно увидеть в окне прогона программы те графические изображения, которые она формирует.

Puc. 2.11. Диалоговое окно опции Options/Enviroment/Startup

Опция EGA/VGA palette save позволяет сохранить в оперативной памяти цветовую палитру экрана, поэтому изменения этой палитры в отлаживаемой программе не будут влиять на вид окон среды Турбо Паскаль.

Опция CGA snow checking может быть неактивна, если ПК оснащен адаптерами типа EGA или VGA. Но если в нем используется адаптер типа CGA, неактивное состояние этой опции будет создавать помехи на экране в виде «снега» при смене на нем изображения (активное состояние этой опции несколько замедляет темп обновления информации на экране, но зато гарантирует отсутствие «снега» на дисплеях любого типа).

Опцию LCD color set следует активизировать только в том случае, когда ПК оснащен жидкокристаллическим дисплеем.

При стандартной настройке среды сразу после загрузки Турбо Паскаля в оперативную память считывается системная библиотека SYSTEM.TPU из библиотечного файла TURBO.TPL. Можно отказаться от этого, если сделать неактивной опцию Load TURBO.TPL. В этом случае системная библиотека должна быть выделена в виде отдельного файла SYSTEM.TPU в каталоге, путь к которому указан в поле Unit directories опции Options/ Environment/Directories. Извлечение модуля SYSTEM.TPU из библиотеки TURBO.TPL осуществляется с помощью утилиты TPUMOVER.EXE, входящей в комплект поставки системы Турбо Паскаль. Для этого используется команда ДОС вида:

TPUMOVER TURBO.TPL *SYSTEM.TPU

(перед именами утилиты, библиотеки и системного модуля можно указывать необходимые пути; символ * перед именем системного модуля определяет операцию извлечения модуля). Если программа использует другие библиотеки, входящие в TURBO.TPL (CRT, DOS, PRINTER, OVERLAY), их также нужно выделить в отдельные TPU-файлы.

В поле Window heap size задается размер оперативной памяти (в килобайтах), который выделяется для хранения неактивных окон среды, в поле Editor heap size – для хранения содержимого окон редактора, а в поле Overlay heap size – для хранения оверлейных модулей. Если активизирована опция Use expanded memory, эта память выделяется из дополнительной памяти ПК, если неактивна – из основной. Соответствующей установкой значений в этих полях можно регулировать размеры буферной памяти в следующих пределах:

Поле

Минимум

Максимум

Window heap size

24 Кбайт

64 Кбайт

Editor heap size

28 Кбайт

128 Кбайт

Overlay heap size

64 Кбайт

256 Кбайт

В поле Swap file directory можно указать «быстрый» диск, с которым среда будет производить динамический обмен данными (свопинг) в процессе своей работы. В качестве «быстрого» диска обычно указывается виртуальный диск, т.е. участок оперативной памяти, который используется подобно механическому диску. Если в этом поле ничего не указано, для свопинга используется текущий каталог.

ENVIRONMENT/Colors. С помощью диалогового окна этой опции Вы можете установить нужную цветовую палитру отдельных элементов среды Турбо Паскаля. В колонке Group указаны следующие элементы среды:

Desktop    вид экрана;                   Watches       окно отладки; 

Menus      меню;                            Call stack     окно стека; 

Dialogs     диалоговые окна;         Register       окно регистров; 

Editor       окна редактора;            Output         окно программы; 

Help          окно помощи;              Compiler      окно компилятора.

В колонке Item детализируются эти элементы (например цвет рамки окна, цвет основных символов, цвет выделения и т.п.). В поле Foreground задается цвет символов, а в поле Background – цвет фона.

OPTIONS/Open. Здесь Вы можете указать имя конфигурационного файла, из которого среда должна получить информацию о своей настройке.

OPTIONS/Save. Сохраняет текущую настройку среды в конфигурационном файле.

OPTIONS/Save as. С помощью этой опции из меню Options можно указать каталог и файл, в котором среда будет сохранять свою настройку (по умолчанию это файл TURBO.TP).