КОМПЬЮТЕРНАЯ ЛИТЕРАТУРА - Фортран. В этой части представлены, как одно целое, все компоненты языка МС Фортран.

Индекс материала
Фортран. В этой части представлены, как одно целое, все компоненты языка МС Фортран.
Стр. 2
Все страницы
                            ОБЗОР ЯЗЫКА.




            ОБ ЭТОЙ ЧАСТИ

     В этой части представлены как одно целое все компоненты язы-
ка МС Фортран.

СОДЕРЖАНИЕ


1. МЕТАКОМАНДЫ МС-ФОРТРАНА.  . . . . . . . . . . . . . . . .  1-1

2. ПРОГРАММЫ И КОМПИЛИРУЕМЫЕ ЧАСТИ ПРОГРАММ.  . . . . . . . . 1-1

3. ВВОД/ВЫВОД. . . . . . . . . . . . . . . . . . . . . . . .  1-2

4. ОПЕРАТОРЫ.  . . . . . . . . . . . . . . . . . . . . . . .  1-3

6. ИМЕНА.  . . . . . . . . . . . . . . . . . . . . . . . . .  1-5

7. ТИПЫ. . . . . . . . . . . . . . . . . . . . . . . . . . .  1-5

8. СТРОКИ. . . . . . . . . . . . . . . . . . . . . . . . . .  1-6

9. СИМВОЛЫ.  . . . . . . . . . . . . . . . . . . . . . . . .  1-6





     1. МЕТАКОМАНДЫ МС-ФОРТРАНА.

     Метаязык - это язык управления компилятором MS-Фортрана. Ме-
такоманды позволяют Вам определить  варианты,  воздействующие  на
все операции компиляции. Например, с помощью метакоманд Вы можете
включить  или  выключить  генерацию файла листинга, проверку кода
при ошибке счета, или использовать  такие  возможности  Фортрана,
которые не входят в подмножество или в полный стандарт языка. Ме-
таязык  содержит  команды,  которые  вставляются в файл исходного
текста, каждая из которых занимает отдельную строку, и каждая  из
которых начинается с символа доллар ($) в первой колонке.
     Метаязык - это уровень языка, позволяющий расширить  исполь-
зование  компилятора  MS-Фортрана.  Хотя в большинстве реализаций
Фортрана  есть  средства  управления  компилятором,   метакоманды
MS-Фортрана  не  входят в стандарт Фортрана (и поэтому не мобиль-
ны).
     Ниже приведены существующие в настоящий момент метакоманды:
  $[NO]DEBUG       $[NO]LARGE  $PAGESIDE
  $DEVFNH          $LINESIDE   $STORAGE
  $DO66            $[NOT]LIST  $[NOT]STRICT
  $[NO]FLOATCALLS  $MESSADE    $SUBTITLE
  $INCLUDE         $PAGE       $TITLE
     Смотрите  часть  6  "Метакоманды MS-Фортрана" для подробного
изучения метакоманд.

2.ПРОГРАММЫ И КОМПИЛИРУЕМЫЕ ЧАСТИ ПРОГРАММ.

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

1.Программа.
____________
     Любая  программная  единица,  не  начинающаяся  с  оператора
FUNCTION или SUBROUTINE. Первым оператором может быть PROGRAM, но
такой оператор не обязателен. Выполнение программы всегда начина-
ется с первого выполняемого оператора в главной программе. Следо-
вательно  в каждой выполняемой программе должна быть единственная
главная программа.

2.Подпрограмма.
_______________
     Программная единица,которая может вызваться из других  прог-
раммных  единиц  оператором  CALL, будучи вызванной, подпрограмма
осуществляет набор действий, определенных ее выполняемыми  опера-
торами, и затем возвращает управление на оператор, стоящий непос-
редственно за оператором вызова. Подпрограмма не возвращает прямо
величины,  хотя  они могут быть переданы в вызывающую программную
единицу через параметры или общие переменные.



3.Функция.
__________
     Программная единица, которая может быть употреблена в  выра-
жении.  Функция  прямо  возвращает величину, которая используется
при вычислении этого выражения, и кроме того может возвращать ве-
личины через параметры. Существует  три  вида  функций:  внешние,
внутренние  и  функция-оператор.  (Функция-оператор не может быть
скомпилирована отдельно).

4.Подпрограмма блока данных.
____________________________

     Программная единица, обеспечивающая начальные значения пере-
менных в COMMON-блоках. Переменные  обычно  заводятся  оператором
DATA,  но  переменные в COMMON не могут быть заведены нигде кроме
подпрограммы блока данных.

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

1. Если программа большая, разделение ее на части облегчает  соз-
   дание, тестирование и ее сборку.
2. Если программа большая и повторная компиляция всего исходного
   текста занимает много времени, разделение ее на части экономит
   время компиляции.
3. Если Вам надо использовать некоторые процедуры во многих  дру-
гих  программах,  Вы  можете  создать один объектный файл из этих
процедур и затем загружать его в каждую из  программ,  в  которой
нужны эти процедуры.
4. Если процедуру надо использовать в разных случаях разным обра-
зом, можно записать ее в отдельный файл и скомпилировать  отдель-
но. Затем для обеспечения ее вариативности Вы можете изменить со-
держание  и  даже  переписать имена Ассемблере или MS- Паскале, а
остальная часть Вашей программы не изменится.

     Для получения полной информации о компилируемых  программных
единицах смотрите часть 5 "Программы, подпрограммы и функции."

3. ВВОД/ВЫВОД.

     Ввод  - это передача данных из внешней среды или из внутрен-
ного файла во внутреннюю память. Процесс передачи называется чте-
нием. Вывод - это передача данных из внутренней памяти во внешнюю
среду или во внутренний файл. Этот процесс называется записью.

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



     В таблице 1-1 приведены операторы ввода/вывода, осуществляю-
щие каждую из этих трех функций.
  ЪДДДДДДДДДДДДДДДДДДДДДДДДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДї
  іФункции ввода/вывода      і Операторы ввода/вывода    і
  ГДДДДДДДДДДДДДДДДДДДДДДДДДДЕДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
  і Передача данных          і READ                      і
  і                          і WRITE                     і
  і                          і                           і
  і Вспомогательные функции  і OPEN                      і
  і ввода/вывода             і CLOSE                     і
  і                          і BACKSPASE                 і
  і                          і ENDFILE                   і
  і                          і REWIND                    і
  і                          і INQUIRE                   і
  і                          і LOCKING                   і
  і                          і                           і
  і Определение положения    і BACKSPASE                 і
  і в файле                  і ENDFILE                   і
  і                          і REWIND                    і
  АДДДДДДДДДДДДДДДДДДДДДДДДДДБДДДДДДДДДДДДДДДДДДДДДДДДДДДЩ
          Таб. 1-1 операторы ввода/вывода.

     Для понимания системы ввода/вывода нужны также следующие по-
ложения:

1.Записи.
     Понятие, на котором основана система файлов Фортрана. Запись
- это последовательность символов или величин. Существует три ви-
да записей: форматные, бесформатные и конец файла.

2. Файлы.
     Последовательности записей. Файлы могут  быть  внешними  или
внутренними.
     Внешние файлы - это файлы, относящиеся к устройству, или са-
мо  устройство. Внутренний файл - это текстовая переменная, кото-
рая используется либо как текст, либо  как  назначение  некоторых
действий по форматному вводу/выводу.
     Все файлы имеют следующие атрибуты:
a. имя файла (произвольное)
b. указатель позиции в файле
c. структура (форматная, неформатная или двоичная)
d. метод доступа (последовательный или прямой)
     Хотя возможно большое разнообразие типов файлов, большинство
приложений  сводится  к двум типам: неявно открытые и явно откры-
тые, внешние, последовательные, форматные файлы. Смотрите часть 3
"Операторы", где приведены описания операторов ввода/вывода.  Для
изучения  полного  описания  записей, файлов и редакции форматной
информации смотрите часть 4 "Система ввода/вывода".

4. ОПЕРАТОРЫ.

     Операторы представляют собой набор функцый, таких как вычис-
ления,  запись результатов вычислений, изменение цепочек управле-
ния, чтение и запись файлов и определение информации для компиля-
тора. Операторы Фортрана разделяются на два основных класса:  вы-
полняемые и невыполняемые.
     Выполняемые операторы вызывают требуемые действия.  Невыпол-
няемые  операторы  никаких действий не вызывают. Вместо этого они
определяют, описывают или классифицируют элементы программ, такие