Смекни!
smekni.com

Техтран - система программирования оборудования с ЧПУ (стр. 15 из 16)

При использовании оператора ПЕЧТР ВСЕ дополнительно выводятся на печать следующие параметры: координаты точек разбиения окружностей на квадранты, промежуточные точки аппроксимации окружности отрезками прямых, сообщение «ДВИЖЕНИЕ ПО КОНТУРУ» и траектория движения по контуру или по таблично заданной кривой.

Использование оператора ПЕЧТР ВЫКЛ приводит к подавлению вывода информации на печать до конца программы или до следующего оператора ПЕЧТР. Исключение составляют строки, содержащие ошибки движения, которые выводятся всегда.

Данные обо всех геометрических переменных выводятся в соответствии с их внутренним представлением (см. п. 2.9).

Оператор СЛЕД выполняет трассировку программы, т. е. печатает результаты выполнения операторов и имеет следующий формат: ÂÊË

СЛЕД ÂÑÅ

ÂÛÊË

где ВКЛ − включение распечатки результатов выполнения операторов, находящихся вне макроса; ВСЕ − включение распечатки результатов выполнения всех операторов; ВЫКЛ − выключение распечатки результатов выполнения операторов.

Таблица 2.5

Содержание строки

Данные, выводимые на печать

ЕСЛИ (логическое)

ЛОЖЬ или ИСТИНА

НАМЕТКУ

ПЕРЕХОД НА МЕТКУ

ПОВТОР

Минимальное и максимальное значения индекса

КОНЦИКЛ

ПЕРЕХОД НА МЕТКУ

ВЫЗОВ

ВХОД В МАКРО

КОНЕЦ МАКРОСА

ВЫХОД ИЗ МАКРО

Арифметическое выражение

Результат

Геометрическое определение

Имя параметра геометрического объекта Параметры геометрических объектов, образующих контур; координаты опорных точек табулированной кривой

КОНТУР

П р и м е ч а н и е . Перед результатом на печать выводится номер соответствующей строки.

В режиме «1» печатаются результаты всех операторов, приведенных в табл. 2.5. В режиме «О» печатаются только результаты управляющих операторов. Вся информация выводится в процессе работы второй фазы процессора в формате, приведенном в табл. 2.5.

Оператор ПЧТ1 используется для печати значения некоторой переменной или параметров геометрического объекта (точки, окружности, вектора или прямой) и имеет следующий формат: ПЧТ1 имя1, имя2, имя3,… где имя1, имя2, . . .− имена геометрических объектов или переменных.

Аналогично оператору СЛЕД информация выводится в процессе работы второй фазы процессора в следующем формате:/ номер строки имя1 =внутреннее представление номер строки имя2=внутреннее представление

Оператор СИНОНИМ служит для замены стандартных служебных слов синонимами и имеет следующий формат:

СИНОНИМ (служебное слово1, синоним1), %

[(служебное слово2, синоним2), %

(служебное словоn, синонимn)]

В качестве синонимов могут употребляться только имена. Оператор должен быть задан до первого использования синонима. Например, задав оператор СИНОНИМ (ВПЕРЕД, В), (ПЕРЕСЕЧ, П), можно вместо оператора ВПЕРЕД ПР1 ДО 2 ПЕРЕСЕЧ КР1 употреблять в программе оператор В ПР1 ДО 2 П КР1.

Оператор вставки текста «*» позволяет вставить в программу текст, хранящийся во внешней памяти, и имеет следующий формат:

* имя * литерал где имя − имя модуля из библиотеки программ; литерал − спецификация файла. Например:

*PROG1

*’SY: PROG2'

Конкретный формат оператора зависит от типа используемой ЭВМ.

2.13 Макросы

В языке Техтран можно использовать в программе отдельно подготовленные части исходного текста − макросы. В макросе разрешается применять любые операторы языка, но вместо конкретных значений переменных могут использоваться параметры.

Подключение макроса к программе осуществляется при помощи специального оператора ВЫЗОВ. При этом в тексте программы на месте оператора ВЫЗОВ появляется текст вызываемого макроса (тело), в котором формальные параметры, заданные в теле макроса, заменяются фактическими значениями, указанными в операторе ВЫЗОВ. Допускается определение макросов внутри программы. В этом случае вызов макроса должен производиться из этой же программы.

Структура макросов. Макрос состоит из заголовка, тела и ограничителя. Заголовок макроса представляет собой специальный оператор МАКРО. Тело макроса − произвольная последовательность операторов языка Техтран (кроме операторов ДЕТАЛЬ, КОНЕЦ и ПЕЧТЕКСТ), в которых могут быть использованы параметры макроса. Тело макроса может содержать другие макросы и обращения к ним. Ограничителем макроса является служебное слово КОНМАК.

Параметры макроса. Параметры могут быть операторными и текстовыми. Параметры записываются в произвольном порядке и отделяются друг от друга запятыми.

Операторный параметр представляет собой оператор языка Техтран, заключенный в скобки. При вызове макроса операторные параметры выполняются непосредственно перед телом макроса. В качестве операторных параметров нельзя использовать операторы ДЕТАЛЬ, КОНЕЦ, МАКРО, КОНМАК, ВЫЗОВ, КОНТУР, КОНКОН, ПОВТОР, КОНЦИКЛ, ЕСЛИ. Операторы присваивания, не содержащие разделителей в правой части, в скобки можно не заключать.

Текстовой параметр в отличие от операторного имеет свое имя и значение. Значением текстового параметра является произвольная последовательность символов, не содержащая символа «#». Имя текстового параметра − произвольное имя, допустимое в языке Техтран.

В теле макроса имени текстового параметра должен предшествовать символ макроподстановки «&». При вызове макроса вместо символа «&» и имени параметра в текст будет подставлено его значение. Не разрешается параметризовать часть имени, числа или литерала.

Например, вместо оператора КР& КР = 0,0,40 после текстовой подстановки значения параметра '10' получим: КР 10 = 0,0,40, что недопустимо.

Правильной является запись: &КР = 0,0,40. При значении параметра 'КРЮ' оператор будет преобразован к виду: КР10 = 0,0,40.

Значения текстовых параметров макроса задаются в операторах ВЫЗОВ или МАКРО.

Заголовок макроса. Заголовок представляет собой специальный оператор МАКРО и имеет следующий формат:

МАКРО имя [(список значений)]

где имя − имя макроса (любое имя, допущенное в языке Техтран); список значений − список

значений текстовых параметров, установленных по умолчанию.

Если значения по умолчанию не задаются, скобки должны быть опущены. Значение по умолчанию используют в том случае, если в операторе ВЫЗОВ значение данного текстового параметра не задано. Элементы списка значений отделяются друг от друга запятыми.

Значение по умолчанию задается одним из следующих способов:

1) 'имя' = литерал (например, 'КР'='КР10' − параметр с именем КР принимает по умолчанию значение, равное КРЮ);

2) 'имя1' = & имя2(например, 'КР1' = &КР2− параметр с именем КР1 принимает то же значение, что и параметр КР2; параметр КР2 должен быть определен ранее);

3) 'имя' = объединение литералов и текстовых параметров (например, если значение параметра КР по умолчанию определено следующим образом: 'КР' = = 'КР'&М6&АБ'10', то при значениях параметров Мб и АБ'04' и 'В' соответственно, параметр с именем КР примет значение КР04В10).

Примеры заголовков макросов: МАКРО МТК1

Значений по умолчанию нет.

МАКРО М2 ('ПГ = '1',' П2' = 'ПР'&П1,' ПЗ' = 'КР'&П1&П1)

По умолчанию: П1 = 1; П2 = ПР1; ПЗ = КРП

МАКРО МЗ (/ПГ = 'Г,'П2'=='ПР'&П4&П4',ПЗ' = 'КР'&П4)

По умолчанию: П1 = 1; П2 = ПР значение П4 значение П4; ПЗ = КР значение П4.

Значение параметра П4 обязательно должно быть определено при вызове макроса. В противном случае возникнет ошибка. Если для параметра П4 нужно задать значение по умолчанию, то это следует сделать до присваивания значений П2 и ПЗ: МАКРО ПЗ ('ПГ = 'Г, 'П4' = '2', 'П2'='ПР'&П4&П4, % ‘ПЗ' = 'КР'&П4)

Вызов макроса. Для выполнения макроподстановки, т. е. вставки в текст исходной программы на Техтране тела макроса и для замены формальных "параметров фактическими предназначен оператор ВЫЗОВ. Он имеет следующий формат: èìÿ

ВЫЗОВ [(список параметров)]

ëèòåðàë

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

Имя макроса используется в том случае, когда макрос находится в макробиблиотеке или определяется в самой программе. Если макрос содержится в отдельном файле, следует использовать литерал − спецификацию этого файла. Формат спецификации файла зависит от типа ЭВМ и операционной системы, например: