Описание языка исходных даных

<< Click to Display Table of Contents >>

Navigation:  Для опытных пользователей >

Описание языка исходных даных

1. Вводная часть

 

Для подготовки исходных данных в системе АВС применяется проблемно-ориентированный входной язык АВС.

Язык АВС имеет два уровня: базисный входной язык и язык для записи стандартных фрагментов (макроязык АВС).

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

 

2. Основные конструкции языка

 

В настоящем документе приводится описание базисного входного языка АВС: рассматриваются его синтаксис и семантика, приводятся примеры записи исходных данных на базисном языке АВС.

Любые исходные данные для программы АВС могут быть полностью описаны на базисном входном языке, основные положения которого рассматриваются в настоящем разделе.

 

Задание на расчет

 

Обычным режимом работы программы АВС является одновременная обработка большого количества исходных данных, которые объединяются в общее задание на расчет.

<задание на расчет> ::= <исходные данные>...

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

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

Исходные данные

 

Каждые исходные данные должны состоять из заголовка, содержания и конца:

<исходные данные> ::= <заголовок> <содержание> <конец>

 

Заголовок

 

Заголовок состоит из двух обязательных строк типа Э и Ю:

 

<заголовок>:=<строка типа Э><строка типа Ю>

 

В строке типа Э задается ряд параметров общего назначения:

 

<строка типа Э> ::= Э< регистрационный номер >'

< список работ >'

< признаки >'

< код организации >'

< номер района >'

< номер зоны >'

< номер зоны по КСЦ >'

< код списка числовых параметров >'

< строительный объем >'

< единица измерения строительного объема >*

 

Буква Э является меткой, определяющей начало заголовка (и начало исходных данных).

 

Регистрационный номер

 

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

Синтаксически регистрационный номер определяется как целое число не более чем из восьми разрядов:

 

< регистрационный номер > ::= < целое,9 >

 

Отдельные разряды или группы разрядов могут использоваться для специальных целей: кода проектной организации, кода объекта и др.

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

 

Список работ

 

Список работ указывает, какие работы должна выполнить программа и (или) какие должны быть выданы при этом документы.

Если в списке работ пусто, то это определяет случай, когда требуется только распечатка исходных данных, трансляция стандартных фрагментов и вывод информации об ошибках. В более общем случае:

 

< список работ > ::= < метка работы >...

 

где < метка работы > ::= < буква > [ <цифра> ]

 

Каждой метке работы соответствует один из видов выходных документов, полный список которых дан в табл. 2.1.

Цифра у метки работы уточняет форму выходного документа, устанавливает тип и степень подробности концовки. Цифра 1 определяет самую короткую концовку, цифра 9 – самую подробную.

Из определения списка работ видно, что в задании можно указывать несколько выходных форм, однако в АВС допустимы не все их сочетания, например, если указана работа Л2 (или Л4), то все другие работы, кроме Ж5, в этом случае запрещены и блок логики выдает сообщение об ошибке.