Операторы безусловного перехода
Регистры.
Ячейка памяти, служащая для хранения чисел. Обозначается R[i].НапримерR[1] = 1, число 1 записано в регистр 1.
Доступно 200 регистров (количество может быть увеличено)
Возможна прямая и косвенная адресации регистра.
При прямой адресации индекс регистра задается как номер - R[2] = 5 В данном случае инструкция присваивает регистру номер 2 значение 5, при этом старое значение регистра будет удалено.
При косвенной адресации индекс регистру задается не как номер, а косвенно, с помощью другого регистра т.е. R[R[3]] = 5. В данном случае инструкция содержит внутренний регистр R[3] и внешний регистр R[R[3]]. Если, например значение регистра R[3] равно 2, внешний регистр будет адресован с индексом 2 - (R[2] = 5).
Возможны следующие арифметические операции:
R[…] = …+… подсчет (суммирование) || R[1]=3+1.3 // R[1]=4.3
R[…] = …-… вычитание || R[1]=R[1]-1.8 // R[1]=2.5
R[…] = …*… умножение || R[1]=R[1]*2 // R[1]=5
R[…] = …/… деление || R[1]=R[1]/0.5 // R[1]=10
R[…] = …DIV… целочисленное деление || R[1]=R[1] DIV 3 // R[1]=3
R[…] = …MOD… остаток после деления || R[1]=R[1] MOD 2 // R[1]=5
Замечание. В рамках одной инструкции позволено несколько арифметических операций, но с ограничениями (не смешивать операции (АND/OR) использовать не более 5 операторов.
Добавление инструкции по работе с регистром
Для присвоения регистру значения (код R[1]=0), с помощью F1 (INST) вызвать окно (Рис.2).
Рис.2. МенюInstruction
ВыбратьпунктRegisters. Откроется окно (Рис. 3).
Рис.3. Меню регистров
В нем выбрать R[ ]=(…) (многоточия заменяются константой аналогично выбору системы координат(UFRAME_NUMили UTOOL_NUM) и написать R[1]= 1.
Для написания выражения (НапримерR[1]=R[1]+1)нажатьF1 (INST) вызвать окно, изображенное на рисунке 1. Выбрать меню Registers и откроется окно (Рис. 4).
Рис.4. Меню шаблонов
В нем выбрать шаблон выражения в котором заменить многоточия на нужные выражения.
Операторы безусловного перехода
Для создания циклов и ветвлений программы используются операторы безусловного перехода (JMP_LBL). Вид инструкции:
JMP_LBL[i], где i – номер метки, в которую необходимо осуществить переход.
LBL[i] – инструкция описывающая метку, i – номер метки.
Пример 1:
Рассмотрим пример использования регистра в качестве счетчика, совместно с оператором безусловного перехода.
Пусть имеется программа
1: JP[1] 100% FINE
2: J P[2] 100% FINE
3: JP[3] 100% FINE
[END]
Добавим в программу следующие операторы
|
2: LBL[1]
3: J P[1] 100% FINE
4: J P[2] 100% FINE
5: J P[3] 100% FINE
6: R[1] = R[1] + 1
7: JMP_LBL[1]
[END]