Add Q1 I2

ST Q1

ADD I2

LD Q1

Операнды

Константы

Константы могут быть двух типов:

· целые числа в диапазоне от –127 до 127;

· любые другие числа.

Эти константы могут записываться в десятеричном и в шестнадцатеричном виде. Шестнадцатеричная константа начинается с .

Ограничений на число констант первого типа не накладывается. Максимальное число констант второго типа для программ типа FB равно 10, а для PRG – 40. Совпадающие по значению константы считаются за одну.

Каждая инструкция программы содержит оператор и операнды. Оператор задает действие, которое надо выполнить с операндами. В качестве операндов в IL-программе могут использоваться все описанные выше переменные, кроме CMP, а также константы.

Значение операнда HEX-формата, задаваемого константой, не может быть больше 0xFF (255).

Язык Техно IL позволяет выполнять с операндами арифметические и логические операции, а также операции сравнения. Почти все они имеют два обозначения: символьное и мнемоническое.

Синтаксис записи операций

В соответствии со стандартом в строке записывается сначала мнемоническое обозначение операции, затем через пробел – операнд.. Техно IL позволяет использовать два операнда и мнемоническое или символьное обозначение операции. Кроме того, обозначение операции может быть помещено между операндами.

· Внимание! При записи символа операции между операндами он должен быть отделен пробелами с двух сторон.

Например, операция сложения переменной Q1 с переменной I2 с записью результата в первую из них в соответствии со стандартом записывается следующим образом:

В Техно IL эта операция может быть записана так же, а может - существенно компактнее:

или

+ Q1 I2

или

Q1 + I2

В одной строке программы можно записать несколько операций. В этом случае их следует разделять символом “;”.

Арифметические операции

Техно IL поддерживает следующие арифметические операции:

Символьное обозначение Мнемоническое обозначение Описание
+ ADD Сложить операнды;
- SUB Вычесть из первого операнда второй;
* MUL Умножить операнды;
/ DIV Разделить первый операнд на второй;
% MOD Получить остаток от деления операндов;
** POW Возвести первый операнд в степень, заданную вторым операндом;
= MOVE Присвоить первому операнду значение второго.

Результат выполнения операции заносится в первый операнд. Если в операции указан только один операнд, то он воспринимается как второй, а в качестве первого используется значение аккумулятора.

Логические операции

Программы на Техно IL позволяют выполнять следующие логические операции с операндами:

Символьное обозначение Мнемоническое обозначение Описание
& AND Логическое умножение;
| OR Логическое сложение;
^ XOR Исключающее логическое сложение;
  ANDN Логическое умножение первого операнда на инвертированное значение второго;
  ORN Логическое сложение первого операнда с инвертированным значением второго;
  XORN Исключающее логическое сложение первого операнда с инвертированным значением второго.

Эти операции выполняются побитно над значениями соответствующих битов операндов.

Операции сравнения

Из операций сравнения в Техно IL реализованы следующие:

Символьное обозначение Мнемоническое обозначение Описание
== EQ Сравнение на равенство;
> GT Сравнение на "больше";
>= GE Сравнение на "больше или равно";
< LT Сравнение на "меньше";
<= LE Сравнение на "меньше или равно";
!= NE Сравнение на неравенство;
  TEST Сравнение на равенство 0 логического умножения операндов.

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

Эта переменная анализируется в операторах условного перехода Если в операции указан только один операнд, то он воспринимается как второй. А в качестве первого используется аккумулятор.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: