- •Казанский Государственный Технологический Университет
- •1. Обзор языка
- •1.1. Метакоманды мs-Фортрана.
- •1.2. Программы и компилируемые части программ.
- •1.3. Ввод/Вывод.
- •1.4. Операторы.
- •1.5. Выражения.
- •1.6. Имена.
- •1.7. Типы.
- •1.8. Строки.
- •1.9. Символы.
- •2. Термины и концепции
- •2.1. Запись программ.
- •2.1.1. Буквенноцифровые символы.
- •2.1.2. Пробелы.
- •2.1.3. Табуляторы.
- •2.2. Строки и операторы.
- •2.2.1. Начальные строки.
- •2.2.2. Строки продолжения.
- •2.2.3. Строки коментария.
- •2.2.4. Операторы описания данных и порядок следования операторов.
- •2.3. Типы данных.
- •2.4. Имена.
- •2.4.1. Область действия имен Фортрана.
- •2.4.2. Имена Фортрана по умолчанию.
- •2.5. Выражения.
- •2.5.1. Арифметические выражения.
- •2.5.2. Деление целых.
- •2.5.3. Преобразования типов арифметических операндов.
- •2.5.4. Символьные выражения.
- •2.5.5. Выражения отношения.
- •2.5.6. Логические выражения.
- •2.5.7. Приоритеты операторов.
- •2.5.8. Правила вычисления выражений.
- •3. Операторы
- •3.1. Категории операторов.
- •3.1.1. Операторы program, subroutine, function и block data.
- •3.1.2. Операторы описания.
- •3.1.3. Опepaтop data.
- •3.1.4. Oпepaтop format.
- •3.1.5. Oпepaтop пpиcвaивaния.
- •3.1.6. Oпepaтopы упpaвлeния.
- •3.1.7. Oпepaтopы ввoдa/вывoдa.
- •4. Программы, подпрограммы и функции.
- •4.1. Основная программа.
- •4.2. Подпрограммы.
- •4.3. Функции.
- •4.3.1. Внешние функции.
- •4.3.2. Встроенные функции.
- •4.3.3. Функции-операторы.
- •4.4. Параметры.
1. Обзор языка
1.1. Метакоманды мs-Фортрана.
Метаязык - это язык управления компилятором MS-Фортрана. Метакоманды позволяют Вам определить варианты, воздействующие на все операции компиляции. Например, с помощью метакоманд Вы можете включить или выключить генерацию файла листинга, проверку кода при ошибке счета, или использовать такие возможности Фортрана, которые не входят в подмножество или в полный стандарт языка. Метаязык содержит команды, которые вставляются в файл исходного текста, каждая из которых занимает отдельную строку, и каждая из которых начинается с символа доллар ($) в первой колонке.
Метаязык - это уровень языка, позволяющий расширить использование компилятора MS-Фортрана. Хотя в большинстве реализаций Фортрана есть средства управления компилятором, метакоманды MS-Фортрана не входят в стандарт Фортрана (и поэтому не мобильны).
Ниже приведены существующие в настоящий момент метакоманды:
$[NO]DEBUG $[NO]LARGE $PAGESIDE
$DEVFNH $LINESIDE $STORAGE
$DO66 $[NOT]LIST $[NOT]STRICT
$[NO]FLOATCALLS $MESSADE $SUBTITLE
$INCLUDE $PAGE $TITLE
1.2. Программы и компилируемые части программ.
Компилятор MS-Фортрана производит программные единицы. Ими могут быть основная программа, подпрограмма или функция. Вы можете откомпилировать любую из этих единиц отдельно и затем загрузить их вместе без объединения их еще до компиляции.
1.Программа.
Любая программная единица начинается с оператора FUNCTION или SUBROUTINE. Первым оператором может быть PROGRAM, но такой оператор не обязателен. Выполнение программы всегда начинается с первого выполняемого оператора в главной программе. Следовательно в каждой выполняемой программе должна быть единственная главная программа.
2.Подпрограмма.
Программная единица,которая может вызваться из других программных единиц оператором CALL, будучи вызванной, подпрограмма осуществляет набор действий, определенных ее выполняемыми операторами, и затем возвращает управление на оператор, стоящий непосредственно за оператором вызова. Подпрограмма не возвращает прямо величины, хотя они могут быть переданы в вызывающую программную единицу через параметры или общие переменные.
3.Функция.
Программная единица, которая может быть употреблена в выражении. Функция прямо возвращает величину, которая используется при вычислении этого выражения, и кроме того может возвращать величины через параметры. Существует три вида функций: внешние, внутренние и функция-оператор. (Функция-оператор не может быть скомпилирована отдельно).
4.Подпрограмма блока данных.
Программная единица, обеспечивающая начальные значения переменных в COMMON-блоках. Переменные обычно заводятся оператором DATA, но переменные в COMMON не могут быть заведены нигде кроме подпрограммы блока данных.
Подпрограммы и функции позволяет Вам создавать большие структурированные программы, которые можно делить на части. Это дает преимущества в следующих ситуациях:
1. Если программа большая, разделение ее на части облегчает создание, тестирование и ее сборку.
2. Если программа большая и повторная компиляция всего исходного текста занимает много времени, разделение ее на части экономит время компиляции.
3. Если Вам надо использовать некоторые процедуры во многих других программах, Вы можете создать один объектный файл из этих процедур и затем загружать его в каждую из программ, в которой нужны эти процедуры.
4. Если процедуру надо использовать в разных случаях разным образом, можно записать ее в отдельный файл и скомпилировать отдельно. Затем для обеспечения ее вариативности Вы можете изменить содержание и даже переписать имена Ассемблере или MS-Паскале, а остальная часть Вашей программы не изменится.