Опция установки единицы обработки данных Align Data. Эта опция управляет режимом доступа к данным в компьютерах на базе микропроцессоров семейства 80Х86. По умолчанию используется режим Word как наиболее эффективный. Рекомендуем использовать режим по умолчанию. Более подробно об этом см. Приложение 2.
Режим проверки строк-переменных Var-String Checking. Этот режим определяет, как точно компилятор будет проверять значения типа String, передаваемые в процедуры и функции. По умолчанию он имеет значение Strict (точно). При этом строковые переменные, которые передаются по ссылке, должны точно соответствовать типу формальных VAR-параметров, определенных в заголовке вызываемых процедур или функций. Если это не так, то генерируется ошибка выполнения. Если же этот режим имеет значение Relaxed (ослабленная), то длина строкового аргумента передается процедуре или функции без сравнения ее с длиной формального параметра.
Режим проведения логических операций Boolean Evolution. Этот режим определяет метод работы Турбо Паскаля с логическими выражениями, использующими операторы AND и OR. Он имеет два состояния. Первое по умолчанию — Short Circuit (короткие вычисления). При этом коды формируются по следующим правилам:
1. В выражении «a AND b», если «f=False», то значение b не вычисляется.
2. В выражении «a OR b», если «a=True», то значение b не вычисляется.
И наоборот, полное вычисление операндов в логических выражениях производится при втором состоянии — Complete (полностью).
Режим использования сопроцессора Numeric Processing. Язык Турбо Паскаль может генерировать коды, которые управляют работой сопроцессоров 8087 и 80287. Если такой микропроцессор установлен на применяемой ПЭВМ, то программы, использующие эти коды, будут работать быстрее, особенно если в них много математических расчетов, и могут использовать расширенный набор типов с плавающей точкой (см. разд. 9.5).
Режим Numeric Processing определяет, будет или нет использоваться расширенный набор типов данных. Если режим включен в состояние Software (программное исполнение), то нет; если же он — в состоянии 8087/80287, то да. По умолчанию режим Numeric Processing устанавливается в Software.
- 30 -
Режим генерации эмулирующих кодов Emulation. Этот режим работает только в том случае, если Numeric Processing установлен в 8087/80287. При этом можно включать в выполняемые коды эмуляцию или отключать ее. По умолчанию этот режим включен. В этом случае Турбо Паскаль проверяет наличие в ПЭВМ сопроцессора. Если он есть, то используются коды управления сопроцессором. Если же сопроцессора нет в ПЭВМ, то используются коды эмуляции и программа работает медленнее. В том случае, если режим Emulation выключен, a Numeric Processing — в состоянии 8087/80287, программа будет проверять наличие сопроцессора, и если его нет, то ее выполнение прекращается.
Режим генерации отладочной информации Debug Information. Этот режим включает генерацию отладочной информации, необходимой для работы встроенного отладчика. Если он включен (по умолчанию), то компилятор генерирует коды, необходимые для нормальной работы этого отладчика (при этом опция Integrated Debugging в меню пункта Debug должна быть так же установлена в состояние On). Кроме того, эта информация позволяет Турбо Паскалю определять строку, в которой произошла ошибка выполнения программы.
Если режим Debug Information установить в состояние Off, то нельзя будет определить, в какой строке произошла эта ошибка. Более того, нельзя воспользоваться командами из меню пункта Run — Trace into, Step over и Go To Cursor, а также невозможно воспользоваться точками останова, которые задаются в меню пункта Break/Watch.
Запись информации о локальных переменных Local Symbols. По этой опции компилятор определяет, надо ли генерировать информацию о константах и переменных, находящихся внутри процедур и функций программы. Когда опция установлена в состояние On (по умолчанию), компилятор позволяет производить проверку значений переменных внутри процедур и функций во время отладки. Если же опция установлена в состояние Off, то нельзя посмотреть значения переменных и констант в окне Watch. Заметим, что если режим Debug Information выключен, то установки в Local Symbols игнорируются.