Операторы обмена с аккумулятором

В таблице 1 представлены операторы обмена с аккумулятором.

Таблица 1

Синтаксис

Допустимый модификатор

Действие

LD operand

N

result := operand

ST operand

N

operand := result

Знак в таблице 1 обозначает операцию присваивания.

В качестве операнда может использоваться численная или булева переменная. В качестве операнда оператора LD может использоваться число.

Отличное от нуля значение аккумулятора интерпретируется как TRUE, нулевое - как FALSE, поэтому значение аккумулятора может быть присвоено как численной, так и булевой переменной.

Пример

VAR VAR.000 : INT := 10; END_VAR

VAR VAR-001 : BOOL := TRUE; END_VAR

VAR VAR_002 : BOOL; END.VAR

LD 8 //result := 8

ST VAR_000 //VAR_000 := 8

ST VAR_002 //VAR_002 := TRUE

LD 0 //result := 0

ST VAR-001

LD VAR-001

ST VAR_002

ST VAR_000

//VAR-001 := FALSE //result := FALSE //VAR_002 := FALSE //VAR_000 := 0

Логические операторы Техно 1L

В таблице 2 представлены логические операторы.

Таблица 2

Синтаксис

Допустимый модификатор

Действие

S operand

operand := TRUE (см. примечание)

R operand

operand := FALSE (см. примечание)

AND operand 1 operand2

N

result := operand 1 := operand 1 AND operand2

OR operand 1 operand2

N

result := operand 1 := operand 1 ORoperand2

XOR operand 1 operand2

N

result := operand 1 := operand 1 XOR operand2

Примечание. Оператор выполняется только тогда, когда result = TRUE.

В качестве операндов могут использоваться булевы переменные. Вторым операндом может быть число (но не численная переменная), которое интерпретируется следующим образом: не равно 0 - TRUE; равно 0 - FALSE.

Выполнение операторов R и S не изменяет значения аккумулятора.

Пример

VAR VAR_001 : BOOL := TRUE; END_VAR

VAR VAR_002 : BOOL; END_VAR

VAR VAR_004 : INT := 0; END_VAR

LD 1

S VAR_002

R VAR_002

//result:=l

//VAR_002:=TRUE

//VAR_002:=FALSE

AND VAR-001 VAR_002 //result:=VAR_001:=FALSE

LD 1

//result:=l

S VAR_OO 1 //VAR-001 :=TRUE

OR VAR_002 VAR_001 //result:=VAR_002:=TRUE

XOR VAR_002 VAR-001 //result:=VAR_002:=FALSE

OR VAR_002 10 //result :=VAR_002:=TRUE

Арифметические операторы Техно IL

В таблице 3 представлены арифметические операторы.

Таблица 3

Синтаксис

Действие

ADD operand2

operand 1

result := operand 1 operand2

:= operand 1 +

SUB operand2

operand 1

result := operand 1 operand2

:= operand 1 -

MUL operand2

operand 1

result := operand 1 operand2

:= operand 1 *

DIV operand2

operand1

result := operand 1 operand2

:= operand 1 :

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

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

Пример

VAR VAR-000 : REAL := 20; END.VAR

VAR VAR-001 : LREAL := 30; END_VAR

ADD VAR_000 10 //result := VAR_000 := 30

MUL VAR-001 9 //result := VAR_001 := 270

SUB VAR-001 VAR_000 //result := VAR_001 := 240

DIV VAR-001 VAR_000 //result := VAR_001 := 8

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ ОРИГИНАЛ   След >