Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Операторы безусловного перехода




Регистры.

Ячейка памяти, служащая для хранения чисел. Обозначается 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]

Добавим в программу следующие операторы

В данном примере –R[1] – регистр выступающий в качестве счетчика. Начальное значение регистра ноль. Инструкция JMP_LBL[1] (безусловный переход) – переводит выполнение программы в метку 1 (строка 2). Таким образом блок кода реализующий обход трех точек (строки 3, 4, 5) будет выполняться бесконечное количество раз. Причем в регистре номер 1 будет содержаться число выполненных итераций.
1: R[1] = 0

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]

 





Поделиться с друзьями:


Дата добавления: 2016-09-06; Мы поможем в написании ваших работ!; просмотров: 363 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Студент может не знать в двух случаях: не знал, или забыл. © Неизвестно
==> читать все изречения...

2817 - | 2385 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.