Сложение целых чисел

Состояние сигнала 1 на разрешающем входе (EN) активизирует команду Сложение целых чисел. Эта команда складывает входы IN1 и IN2. Результат может быть опрошен на выходе OUT. Если результат лежит вне допустимого диапазона для целых чисел, то биты OV и OS слова состояния имеют значение 1, а ENO - значение 0.

Блок LAD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L Разрешающий вход
  ENO BOOL I, Q, M, D, L Разрешающий выход
  IN1 INT I, Q, M, D, L Первое слагаемое
  IN2 INT I, Q, M, D, L Второе слагаемое
  OUT INT I, Q, M, D, L Сумма

пример и биты слова состояния

 

Сложение двойных целых чисел

Эта функция действует точно также как и предыдущая, разница лишь в том что она складывает двойные целые числа.

Блок LAD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L Разрешающий вход
  ENO BOOL I, Q, M, D, L Разрешающий выход
  IN1 DINT I, Q, M, D, L Первое слагаемое
  IN2 DINT I, Q, M, D, L Второе слагаемое
  OUT DINT I, Q, M, D, L Сумма

пример и биты слова состояния

 

Вычитание целых чисел

Состояние сигнала 1 на разрешающем входе (EN) активизирует команду Вычитание целых чисел. Эта команда вычитает вход IN2 из IN1. Результат может быть опрошен на выходе OUT. Если результат лежит вне допустимого диапазона для целых чисел, то биты OV и OS имеют значение 1, а ENO - значение 0.

Блок LAD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L Разрешающий вход
  ENO BOOL I, Q, M, D, L Разрешающий выход
  IN1 INT I, Q, M, D, L Уменьшаемое
  IN2 INT I, Q, M, D, L Вычитаемое
  OUT INT I, Q, M, D, L Разность

пример и биты слова состояния

 

Вычитание двойных целых чисел

Эта функция действует точно также как и предыдущая, разница лишь в том что она вычитает двойные целые числа.

Блок LAD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L Разрешающий вход
  ENO BOOL I, Q, M, D, L Разрешающий выход
  IN1 DINT I, Q, M, D, L Уменьшаемое
  IN2 DINT I, Q, M, D, L Вычитаемое
  OUT DINT I, Q, M, D, L Разность

пример и биты слова состояния

 

Умножение целых чисел

Состояние сигнала 1 на разрешающем входе (EN) активизирует команду Умножение целых чисел. Эта команда умножает вход IN1 на IN2. Результат может быть опрошен на выходе OUT. Если результат лежит вне допустимого диапазона для целых чисел, то биты OV и OS имеют значение 1, а ENO - значение 0.

Блок LAD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L Разрешающий вход
  ENO BOOL I, Q, M, D, L Разрешающий выход
  IN1 INT I, Q, M, D, L Первый сомножитель
  IN2 INT I, Q, M, D, L Второй сомножитель
  OUT DINT I, Q, M, D, L Произведение

пример и биты слова состояния

 

Умножение двойных целых чисел

Эта функция действует точно также как и предыдущая, разница лишь в том что она умножает двойные целые числа.

Блок LAD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L Разрешающий вход
  ENO BOOL I, Q, M, D, L Разрешающий выход
  IN1 DINT I, Q, M, D, L Первый сомножитель
  IN2 DINT I, Q, M, D, L Второй сомножитель
  OUT DINT I, Q, M, D, L Произведение

пример и биты слова состояния

 

Деление целых чисел

Состояние сигнала 1 на разрешающем входе (EN) активизирует команду Деление целых чисел. Эта команда делит вход IN1 на IN2. Частное от этого деления (округленный до целого результат) может быть опрошен на выходе OUT. Остаток от деления не может опрашиваться. Если частное лежит вне допустимого диапазона для целых чисел, то биты OV и OS имеют значение 1, а ENO - значение 0.

Блок LAD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L Разрешающий вход
  ENO BOOL I, Q, M, D, L Разрешающий выход
  IN1 INT I, Q, M, D, L Делимое
  IN2 INT I, Q, M, D, L Делитель
  OUT INT I, Q, M, D, L Частное

пример и биты слова состояния

 

Деление двойных целых чисел

Эта функция действует точно также как и предыдущая, разница лишь в том что она делит двойные целые числа. Команда Деление двойных целых чисел сохраняет частное в виде одного 32-битного значения в формате DINT и не формирует остатка от деления.

Блок LAD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L Разрешающий вход
  ENO BOOL I, Q, M, D, L Разрешающий выход
  IN1 DINT I, Q, M, D, L Делимое
  IN2 DINT I, Q, M, D, L Делитель
  OUT DINT I, Q, M, D, L Частное

пример и биты слова состояния

 

Получение остатка от деления двойного целого числа

Состояние сигнала ”1” на разрешающем входе (EN) активизирует команду Получение остатка от деления двойного целого числа. Эта операция делит вход IN1 на IN2. Остаток от деления может быть опрошен на выходе OUT. Если результат лежит вне допустимого диапазона для двойных целых чисел, то биты OV и OS имеют значение 1, а ENO - значение 0.

Блок LAD Параметры Тип данных Область памяти Описание
EN BOOL I, Q, M, D, L Разрешающий вход
  ENO BOOL I, Q, M, D, L Разрешающий выход
  IN1 DINT I, Q, M, D, L Делимое
  IN2 DINT I, Q, M, D, L Делитель
  OUT DINT I, Q, M, D, L Остаток

пример и биты слова состояния

 

Оценка битов слова состояния после операций с
целыми числами

Основные математические команды оказывают воздействие на следующие биты слова состояния:

  • CC 1 и CC 0
  • OV
  • OS

Тире (–) в таблице означает, что результат операции не оказывает влияния
на этот бит.

Состояние сигнала битов слова состояния: результат в допустимом диапазоне
Допустимый диапазон для результата операции с целыми числами (16 и 32 бита)
Биты слова состояния
  CC1 CC0 OV OS
0 (ноль) 0 0 0 -
16 битов: –32 768 . результат < 0 (отрицательное число)
32 бита: –2 147 483 648 . результат < 0 (отрицательное число)
0 1 0 -
16 битов: 32 767 . результат > 0 (положительное число)
32 бита: 2 147 483 647 . результат > 0 (положительное число)
1 0 0 -

 

Состояние сигнала битов слова состояния: результат вне допустимогодиапазона
Недопустимый диапазон для результата операции с целыми числами (16 и 32 бита)
Биты слова состояния
  CC1 CC0 OV OS
16 битов: результат > 32 767 (положительное число)
32 бита: результат > 2 147 483 647 (положительное число)
1 0 1 1
16 битов: результат < –32 768 (отрицательное число)
32 бита: результат < –2 147 483 648 (отрицательное число)
0 1 1 1

 

Состояние сигнала битов слова состояния: операции с целыми числами
(32 бита) +D, /D и MOD
Команда
Биты слова состояния
  CC1 CC0 OV OS
+D: результат = –4 294 967 296 0 0 1 1
/D или MOD: деление на 0 1 1 1 1

<--Предыдущая статья   Следующая статья -->

Rambler's Top100


Сделано djoni