1 Идентификация постпроцессоров осуществляется с помощью двухсимвольного кода постпроцессора ее. Например, постпроцессор для системы управления Н-33 называется Ml, а для системы Н-22− L1.
Глава 2 ВХОДНОЙ ЯЗЫК ТЕХТРАН
Программа. Структура программы. Программа на Техтране представляет собой последовательность операторов и комментариев, описывающих алгоритм обработки деталей. Программа имеет следующую структуру: ДЕТАЛЬ литерал
текст программы
КОНЕЦ
Литерал (см. п. 2.2) задает имя программы. В программу могут быть вставлены фрагменты исходного текста и тексты макросов. Программе на входном языке Техтран может соответствовать одна или несколько управляющих программ. Исходный текст программы состоит из последовательности строк. Максимальное число символов в строке равно 72. В одной строке может быть записан один или несколько операторов, между которыми должен стоять символ «точка с запятой» (;). Все символы текущего оператора должны размещаться до 72-й позиции. В противном случае часть оператора может быть перенесена на следующую строку. Для этого, после прерванной части оператора (до 72-й позиции) необходимо записать символ продолжения «процент» (%). Для совместимости с предыдущими версиями языка разрешается в качестве" символа продолжения использовать знак «коммерческое И» с пробелом (&_). Число строк продолжения не ограничивается.
Текст оператора или комментария может начинаться с любой позиции. Число пробелов между операндами не ограничено. В качестве разделителя операндов вместо запятой можно использовать пробел (_). ДЛЯ удобства чтения программ и ускорения их отладки рекомендуется располагать операторы и комментарии таким образом, чтобы текст программы являлся документом, по которому можно понять структуру и назначение программы. Желательно, чтобы имена меток и переменных, используемых в программе, отражали их назначение.
Для выделения функциональных частей программы рекомендуется использовать строки, состоящие из пробелов, знаков комментария, а также отступов.
Символические имена. Для идентификации в программе переменных величин (геометрических, вещественных, логических, меток операторов, имен макросов) используют символические имена Символическое имя − это последовательность букв и цифр, начинающаяся с буквы. Длина его не должна превышать восьми символов. Пробелы внутри имени не разрешены. Символическое имя должно быть уникальным в программе и описывать один объект или класс объектов, например:
АБ − верно
КР15 − верно
К152АБ − верно
К 1 − неверно
К123455678910 − неверно
123К22− неверно
Операторы, метки, комментарии. Оператор − основная функциональная единица языка. Он предназначен как для описания операций, которые предстоит выполнить, так и для установления свойств данных, идентифицируемых с помощью символических имен. Любой оператор может быть помечен меткой, для того чтобы на него можно было сослаться в других операторах данной программы.
Метка является символическим именем. Она должна предшествовать помечаемому оператору и может находиться либо в одной строке с. оператором, либо на отдельной строке. После метки всегда должен быть служебный символ «двоеточие» (:). Метка используется в операторах НАМЕТКУ.
Для пояснения действий, выполняемых в программе, используют комментарии. Комментарий не обрабатывается процессором, а только выводится на печать при распечатке исходного текста. Комментарий может находиться как в одной строке с операторами исходной программы, так и занимать целую строку. Для выделения текста комментария нужно поставить перед ним служебный символ «номер» (#).
Алфавит языка. Для записи программы используют следующие символы: буквы русского алфавита А−Я; буквы латинского алфавита А−Z; цифры: 0, 1,2, 3, 4, 5, 6, 7, 8, 9; символы: «_» − пробел; «,» − запятая; «• » − точка; « = » − равно; « + » − плюс; « − » − минус; «*» − звездочка; «/» − наклонная черта; «&» − коммерческое «И»; «;» − точка с запятой; «(» − левая скобка; «)» − правая скобка; «:» − двоеточие; «'» − апостроф; «=#=» − номер; «%» − процент.
Синтаксис языка. В связи с тем, что в описании языка не приводится формального описания синтаксиса Техтрана, этот раздел содержит основные правила и обозначения, используемые для описания форматов его операторов. Каждый оператор входного языка, формируется из операндов в соответствии с синтаксическими правилами языка. В описании языка приведена структура каждого оператора (формат).
При описании формата каждого оператора использованы следующие правила и условные обозначения:
прописные буквы используют для обозначения служебных слов;
строчные буквы используют для обозначения опорных элементов, числовых значений
параметров или арифметических выражений; необязательные служебные слова заключают в квадратные скобки [ ];
возможные варианты записи модификаторов, являющиеся альтернативными, заключают в
фигурные скобки { } и записывают в столбец или разделяют символом « | »; параметры, назначающие линейные и угловые размеры, задаются целыми и десятичными
долями миллиметров и градусов.
Элементы языка. В языке разницы между целыми и вещественными числами не существует. Число представляется в виде последовательности цифр, среди которых может встретиться точка или буква Е. Точка отделяет целую часть числа от дробной, а буква Е − мантиссу числа от его порядка. Перед самим числом и перед его порядком может стоять знак «минус» (.−). Пробелы и другие символы внутри числа недопустимы, например: 1.23 − верно; 2.15Е5 − верно; −ЗЕ−6 − верно; 3 Е2 − неверно; Е4 − неверно.
Служебные слова являются зарезервированными словами и составляют словарь языка Техтран. Они используются для написания операторов программы и состоят только из букв русского алфавита. Служебные слова делятся на главные, вспомогательные и модификаторы. Главное слово определяет тип оператора. Вспомогательное слово и модификатор служат для однозначного задания оператора. Служебное слово не может использоваться в качестве имени, переменной или метки. Список служебных слов приведен в Приложениях 1−4.
Переменная в Техтране − это символическое изображение величины, которая может принимать различные значения. Основными характеристиками переменной являются ее имя и тип.
В группу служебных символов входят следующие символы: «_», « + », «−», «*», «/», « = », «;», «.», «,», «:», «'», «#», «&», «( )», «%». Употребление служебных символов в программе зависит от контекста. Описание их функций производится по мере надобности в соответствующих разделах.
Литералом является заключенный в апострофы произвольный текст, не содержащий символа ф. В литералах могут быть использованы любые символы (например, латинские буквы, !, > , < и т. п.). При необходимости использования апострофа его нужно записать два раза подряд, например, 'АВСДЕ" РОН' определяет литерал, состоящий из символов АВСДЕ' РОН. В основном литералы используются для задания текстовых параметров макросов, но кроме этого имеются и некоторые другие применения, например, в операторах ДЕТАЛЬ, СТАНОК и др.
2.3 Типы данных.
Возможности языка программирования в значительной степени определяются набором допустимых типов данных. Входной язык Техтран допускает применение следующих типов данных: вещественный, логический, вектор, прямая, точка, окружность, плоскость, матрица, контур. Тип каждой используемой в программе переменной фиксирован, и на протяжении всей программы каждая переменная обозначает данное только одного типа. Тип переменной описывается явно строкой вида:
тип имя1, имя2, имя3, …
где тип есть: ВЕЩ, ЛОГИЧ, ТОЧКА, ПРЯМАЯ, ВЕКТОР, ОКРУЖИ, ПЛОСК, МАТР,
КОНТУР; имя1, имя2, имя3, ...− имена переменных.
Переопределение типа переменной в программе не разрешено. Если в программе встречается переменная, не описанная ранее, то имя переменной, начинающееся с символов ТЧ, считается неявно описанным, как точка; имя, начинающееся с ПР,− как прямая, с КР,− как окружность. Все остальные имена переменных определяются неявным образом, как вещественные числа.
Можно совмещать описание типа переменной и оператор присваивания, например, оператор ТОЧКА Т1 =0, 1, 2 равносилен двум операторам: ТОЧКА Tl; T1 =0, 1, 2.
Данные одного типа могут объединяться в массивы. Массивы могут быть одномерными и двумерными. Каждый используемый в программе массив должен быть описан с указанием типа, числа индексов (размерности массива) и максимального значения каждого из индексов. Минимальным значением индекса является единица.
Оператор ВЕЩ А (16) описывает одномерный массив А, состоящий из 16 вещественных чисел. Оператор ВЕЩ В (5, 6) описывает двумерный массив, состоящий из 30 вещественных чисел. Для использования элементов массива в вычислениях следует указать имя массива, а за ним в круглых скобках − значение индексов. Индекс не может быть опущен. В частности, одно имя не представляет первый элемент массива.
В качестве индекса может использоваться любое арифметическое выражение. Число индексов и их значения должны соответствовать описанию массива. Число элементов в массиве не ограничено. Например, если значение переменной И = 2, то запись В (3, И + 3) именует элемент массива В (3,5), а запись вида В (3) также, как и запись В (1,6 + И), вызывает ошибку трансляции. В качестве элементов массива не могут использоваться объекты типов МАТР и КОНТУР.