Битовые логические операции Битовые логические инструкции работают с двумя числами, 1 и 0. Эти две цифры образуют базис системы счисления, называемой двоичной системой. Цифры 1 и 0 называются двоичными цифрами (binary digits) или просто битами. При работе со схемами, использующими контакты и катушки, значение 1 означает активное состояние или протекание тока, а 0 – неактивное состояние или отсутствие протекания тока. Битовые логические инструкции интерпретируют состояния сигналов 1 и 0 и комбинируют их по правилам булевой логики. Эти сопряжения дают результат 1 или 0, который называется “результатом логической операции” (RLO). Битовые логические операции интерпретируют сигнальные состояния 1 и 0 и сопрягают их в соответствии с правилами булевой логики. Вход 1 0 1 0 Вход 2 0 0 1 Результат &И 0 0 Результат &ИЛИ 0 Результат &Исключающее ИЛИ 1 1 0 1 0 1 1 1 1 1 0 Для приложений битовой логики используются следующие битовые логические инструкции: ·A И ·AN И-НЕ ·O ИЛИ ·ON ИЛИ-НЕ ·O И перед ИЛИ· ·X ИСКЛЮЧАЮЩЕЕ ИЛИ ·XN ИСКЛЮЧАЮЩЕЕ ИЛИ - НЕ ·A( ·AN( ·O( ·ON( ·X( ·XN( ·) Вы можете использовать следующие инструкции для выполнения вложенных функций: И с открытием скобки И-НЕ с открытием скобки ИЛИ с открытием скобки ИЛИ-НЕ с открытием скобки ИСКЛЮЧАЮЩЕЕ ИЛИ с открытием скобки ИСКЛЮЧАЮЩЕЕ ИЛИ -НЕ с открытием скобки Закрытие скобки Вы можете закончить битовое логическое выражение с помощью одной из следующих инструкций: ·= Присвоение ·R Сброс ·S Установка Для изменения результата логической операции (RLO) Вы можете использовать следующие: ·NOT Инверсия RLO ·SET Установка RLO в 1 ·CLR Сброс RLO в 0 ·SAVE Сохранение RLO в BR регистре ·FN ·FP Другие инструкции реагируют на появление нарастающего или падающего фронта RLO: Выделение падающего фронта Выделение нарастающего фронта Инструкции сравнения 1 Аккумуляторы 1 (ACCU1) и 2 (ACCU2) сравниваются в соответствии с выбранным Вами типом сравнения : •== ACCU1 равен ACCU2 •<> ACCU1 не равен ACCU2 •> ACCU1 больше ACCU2 •< ACCU1 меньше ACCU2 •>= ACCU1 больше или равен ACCU2 •<= ACCU1 меньше или равен ACCU2 Если условие сравнения выполняется, то RLO получает значение "1". Биты слова состояния CC 1 и CC 0 изменяются в соответствии с выполняемыми инструкциями сравнения на «меньше», »равно» или »больше». Вы можете использовать следующие типы сравнения: •? I ==I, <>I, >I, <I, >=I, <=I Сравнение чисел типа Integer (16-битовых) •? D ==D, <>D, >D, <D, >=D, <=D Сравнение чисел типа Double Integer (32-битовых) •? R ==R, <>R, >R, <R, >=R, <=R Сравнение чисел с плавающей точкой (32битовых) Инструкции преобразования Вы можете использовать следующие инструкции для преобразования двоично-десятичного кода в двоичный код и другие типы данных: • BTI Преобразование числа в BCD- коде в целое число (16-бит) • ITB Преобразование целого числа (16-бит) в BCD- код • ITD Преобразование целого числа (16-бит) в двойное целое число (32-бита) • BTD Преобразование числа в BCD- коде в двойное целое число (32-бита) • DTB Преобразование двойного целого числа (32-бита) в BCD- код • DTR Преобр. двойного целого числа (32-бита) в число с плавающей точкой (32-бита по IEEEFP) Вы можете использовать следующие инструкции для формирования дополнений целых чисел или изменения знака чисел с плавающей точкой: • • • • • INVI INVD NEGI NEGD NEGR Инверсия числа типа Integer (16-бит) Инверсия числа типа Double Integer (32-бита) Инверсия знака числа типа Integer (16-bit) Инверсия знака числа типа Double Integer (32-bit) Инверсия знака числа с плавающей точкой (32-bit, IEEE-FP) Вы можете использовать следующие инструкции для изменения расположения байт в Аккумуляторе 1 или в его младшем слове: • • CAW CAD Изменение порядка байт в младшем слове ACCU 1-L (16-бит) Изменение порядка байт в ACCU 1 (32-бита) Вы можете использовать следующие инструкции для преобразования 32-битового числа с плавающей точкой в Аккумуляторе 1 в 32-битовое двойное целое число . Эти инструкции отличаются методами округления: Пример входного значения "100.49" "100.5" •RND Округление до двойного целого 100" "+100" •RND+ Округление до ближайшего большего 101" "+101" 2 "-100.5" "-100.49" "-100" "-100" "+ "-100" "-100" "+ Округление до ближайшего меньшего "-101" "-101" "+ 100" "+100" •TRUNC Выделение целой части "-100" "-100" "+100" "+100" •RND - Инструкции счёта Счетчики являются функциональным элементом языка программирования STEP7 функций счета. Счетчики имеют область, зарезервированную для них в памяти CPU. Эта область памяти резервирует по одному 16-битному слову для каждого адреса счетчика. При программировании в STL Вы можете адресоваться к 256 счетчикам. Чтобы определить сколько счетчиков может использоваться в Вашем CPU, обратитесь к техническому описанию CPU. Инструкции счета являются единственными функциями, которые имеют доступ к области памяти счетчиков. Вы можете изменять значение счетчика, используя следующие инструкции: • FR Деблокировка счетчика • L Загрузка текущего значения счетчика в ACCU 1 • LC Загрузка текущего значения счетчика в BCD-коде в ACCU 1 • R Сброс счетчика • S Установка счетчика на заданное значение • CU Прямой счет • CD Обратный счет Инструкции с блоками данных Вы можете использовать инструкцию «Открыть блок данных « (OPN) для открытия блока данных как совместно используемого (глобального) блока данных или как экземплярного блока данных. Одновременно в программе могут быть открыты один глобальный блок данных и один экземплярный блок данных. Для работы с блоками данных Вы можете использовать инструкции: • OPN Открыть блок данных • CDB Обмен регистрами блоков данных DB и DI • • • • L L L L DBLG DBNO DILG DINO Загрузка длины глобального блока данных в ACCU 1 Загрузка номера глобального блока данных в ACCU 1 Загрузка длины экземплярного блока данных в ACCU 1 Загрузка номера экземплярного блока данных в ACCU 1 Инструкции управления переходами Вы можете использовать следующие инструкции перехода для безусловного прерывания линейного выполнения программы : • • JU JL Безусловный переход Распределенный переход Вы можете использовать следующие инструкции условного перехода в зависимости от результата логической операции (RLO) предыдущей логической инструкции: • • • JC JCN JCB Переход при RLO = 1 Переход при RLO = 0 Переход при RLO = 1 с сохранением в BR 3 • JNB Переход при RLO = 0 с сохранением в BR Следующие инструкции выполняют условный переход в зависимости от состояния битов слова состояния: • • • • JBI JNBI JO JOS Переход при BR = 1 Переход при BR = 0 Переход при OV = 1 Переход при OS = 1 Следующие инструкции выполняют условный переход в зависимости от результатов вычислений: • • • • • • • JZ JN JP JM JPZ JMZ JUO Переход при нулевом результате Переход при ненулевом результате Переход при положительном результате Переход при отрицательном результате Переход при неотрицательном результате Переход при отрицательном или нулевом результате Переход при недействительном результате Инструкции с целыми числами Integer Описание Математические инструкции производят обработку содержимого аккумуляторов 1 и 2. Старое содержимое аккумулятора 1 при выполнении инструкции загрузки сдвигается в аккумулятор 2. При выполнении инструкции, результат сохраняется в аккумуляторе 1, содержимое аккумулятора 2 остается неизменным. В CPU с четырьмя аккумуляторами после выполнения математической инструкции, содержимое аккумулятора 3 копируется в аккумулятор 2, а содержимое аккумулятора 4 в аккумулятор 3. Старое содержимое аккумулятора 4 не меняется. С помощью математических инструкций, Вы можете выполнять следующие операции с двумя целыми числами (16 и 32 бита): • +I Сложение ACCU 1 и ACCU 2 в формате Integer (16-бит) • -I Вычитание ACCU 1 из ACCU 2 в формате Integer (16-бит) • *I Умножение ACCU 1 на ACCU 2 в формате Integer (16-бит) • /I Деление ACCU 2 на ACCU 1 в формате Integer (16-бит) • + Сложение констант типа Integer (16, 32 Бит) • +D Сложение ACCU 1 и ACCU 2 в формате Double Integer (32-бит) • -D Вычитание ACCU 1 из ACCU 2 в формате Double Integer (32-бит) • *D Умножение ACCU 1 и ACCU 2 в формате Double Integer (32-бит) • /D Деление ACCU 2 на ACCU 1 в формате Double Integer (32-бит) • MOD Получение остатка от деления в формате Double Integer (32-бит) Инструкции для чисел с плавающей запятой Real Описание Математические инструкции производят обработку содержимого аккумуляторов 1 и 2 . Старое содержимое аккумулятора 1 при инструкции загрузки сдвигается в аккумулятор 2. При выполнении инструкции, результат сохраняется в аккумуляторе 1, содержимое аккумулятора 2 остается неизменным. В CPU с четырьмя аккумуляторами после выполнения математической инструкции, содержимое аккумулятора 3 копируется в аккумулятор 2, а содержимое аккумулятора 4 в аккумулятор 3. Старое содержимое аккумулятора 4 не меняется. 4 IEEE 32-битовые числа с плавающей точкой соответствуют типу данных REAL. Вы можете использовать следующие инструкции с плавающей точкой для обработки двух 32битовых IEEE чисел с плавающей точкой: • +R Сложение ACCU 1 и ACCU • -R Вычитание ACCU 1 из ACCU 2 • *R Умножение ACCU 1 и ACCU 2 • /R Деление ACCU 2 на ACCU 1 Вы можете использовать следующие инструкции с плавающей точкой для обработки одного 32битового IEEE числа с плавающей точкой: • ABS Модуль числа • SQR Вычисление квадрата • SQRT Вычисление квадратного корня • EXP Вычисление экспоненты • LN Вычисление натурального логарифма • • • • • • Тригонометрические функции: SIN Вычисление синуса угла COS Вычисление косинуса угла TAN Вычисление тангенса угла ASIN Вычисление арксинуса ACOS Вычисление арккосинуса ATAN Вычисление арктангенса Смотрите также оценку битов слова состояния . Вы можете использовать следующие инструкции для преобразования 32-битового числа с плавающей точкой в Аккумуляторе 1 в 32-битовое двойное целое число . Эти инструкции отличаются методами округления: RND Округление до двойного целого • TRUNC Выделение целой части • RND+ Округление до ближайшего большего • RND Округление до ближайшего меньшего • DTR Преобр. двойного целого числа (32-бита) в число с плавающей точкой (32-бита по IEEE-FP) • NEGR Инверсия знака числа с плавающей точкой (32-bit, IEEE-FP) • Инструкции загрузки и передачи • • • • • • • • • • • • Следующие инструкции загрузки могут использоваться: L Загрузка L STW Загрузка битов слова состояния в ACCU 1 LAR1 Загрузка в адресный регистр 1 значения из ACCU 1 LAR2 Загрузка в адресный регистр 2 значения из ACCU 1 LAR1 AR2 Загрузка в адресный регистр1 (AR1) значения из AR2 LAR1 <D> Загрузка в адресный регистр 1 константы (32-битовый указатель) LAR2 <D> Загрузка в адресный регистр константы (32-битовый указатель) Следующие инструкции передачи могут использоваться: T Передача T STW Передача ACCU 1 в слово состояния TAR1 Передача адресного регистра 1 в ACCU 1 TAR2 Передача адресного регистра 1 в ACCU 1 TAR1 AR2 Передача адресного регистра 1 в адресный регистр 2 5 • • • TAR1 <D> TAR2 <D> CAR Передача адресного регистра 1 в целевую область (32-битовый указатель) Передача адресного регистра 2 в целевую область (32-битовый указатель) Обмен содержимым адресных регистров 1 и 2 Инструкции управления программой Следующие инструкции используются для управления программой: • BE Конец блока • BEC Условный конец блока • BEU Безусловный конец блока • CALL Вызов блока • CC Условный вызов блока без параметров • UC Безусловный вызов блока без параметров • • • • • • • • • • • • Вызов FB Вызов FC Вызов SFB Вызов SFC Вызов мультиэкземпляра Вызов библиотечного блока Важные замечания по работе с MCR функциями MCR Главное управляющее реле MCR( Сохранение RLO в стеке MCR, начало MCR зоны )MCR Конец MCR зоны MCRA Активация MCR области MCRD Деактивация MCR области Инструкции сдвига Вы можете использовать следующие инструкции сдвига: • SSI Сдвиг вправо целого числа со знаком • SSD Сдвиг вправо двойного целого числа со знаком • SLW Сдвиг слова влево • SRW Сдвиг слова вправо • SLD Сдвиг двойного слова влево • SRD Сдвиг двойного слова вправо Инструкции циклического сдвига Возможны следующие инструкции циклического сдвига: • RLD Циклический сдвиг двойного слова влево (32-бита) • RRD Циклический сдвиг двойного слова вправо (32-бита) • RLDA Циклический сдвиг ACCU1 влево через бит СС1 (32-бита) • RRDA Циклический сдвиг ACCU1 вправо через бит СС1 (32-бита) Инструкции с аккумуляторами и адресными регистрами В Вашем распоряжении имеются следующие инструкции для обработки содержимого одного или обоих аккумуляторов: • INC Инкремент ACCU 1-L-L • DEC Декремент ACCU 1-L-L 6 • • • • • • • • • • • • +AR1 +AR2 BLD NOP 0 NOP 1 Сложение ACCU 1 с адресным регистром AR 1 Сложение ACCU 1 с адресным регистром AR 2 Инструкция отображения программы Нулевая инструкция Нулевая инструкция TAK PUSH PUSH POP POP ENT LEAVE Обмен содержимым аккумуляторов ACCU 1 и ACCU 2 Для CPU с двумя аккумуляторами Для CPU с четырьмя аккумуляторами Для CPU с двумя аккумуляторами Для CPU с четырьмя аккумуляторами Ввод в стек аккумуляторов Вывод в стек аккумуляторов Инструкции таймеров Возможны следующие инструкции с таймерами: • FR Деблокировка таймера • L Загрузка текущего значения таймера в ACCU 1 в формате Integer • LC Загрузка текущего значения таймера в ACCU 1 в BCD - коде • R Сброс таймера • • • • • Таймер задержки включения Удлиненный импульс Таймер задержки выключения Импульс Таймер задержки включения с памятью SD SE SF SP SS Логические инструкции со словами Word Вы можете использовать следующие инструкции со словами: • AW Поразрядное И над словами (16-бит) • OW Поразрядное ИЛИ над словами (16-бит) • XOW Поразрядное исключающее ИЛИ над словами (16-бит) • AD Поразрядное И над двойными словами (32-бит) • OD Поразрядное ИЛИ над двойными словами (32-бит) • XOD Поразрядное исключающее ИЛИ над двойными словами (32-бита) Каталог Английская Немецкая программных мнемоника мнемоника + = ) +AR1 +AR2 +D –D + = ) +AR1 +AR2 +D –D элементов Целые математические Битовые логические Битовые логические Аккумулятор Аккумулятор Целые математические Целые математические *D /D ? D +I –I *I *D /D ? D +I –I *I Целые математические Целые математические Сравнение Целые математические Целые математические Целые математические 7 Описание Сложение констант целого типа (16, 32б Присвоение Закрывающая скобка Сложение адресного регистра 1 (AR1) с AC Сложение адресного регистра2 (AR2) с AC Сложение ACCU 1 и ACCU 2 как двойных целых чи Вычитание ACCU 1 из ACCU 2 в формате двойных ц бита) Умножение ACCU 1 и ACCU 2 как двойных целых ч Деление ACCU 2 на ACCU 1 как двойных целых чи Сравнение двойных целых чисел (32-бита) ==, <> Сложение ACCU 1 и ACCU 2 как целых чисел Вычитание ACCU 1 из ACCU 2 в формате целых ч Умножение ACCU 1 и ACCU 2 как целых чисел /I ? I +R /I ? I +R Целые математические Сравнение Вещественные математические –R –R Вещественные математические *R *R Вещественные математические /R /R Вещественные математические ? R A A( ABS ACOS AD AN AN( ASIN ATAN AW BE BEC BEU BLD BTD BTI CAD CALL CALL МЭ CALL ББ CAR CAW CC CD CDB ? R U U( ABS ACOS UD UN UN( ASIN ATAN UW BE BEB BEA BLD BTD BTI TAD CALL CALL CALL TAR TAW CC ZR TDB Сравнение Битовые логические Битовые логические Вещественные математические Вещественные математические Логические со слоаами Битовые логические Битовые логические Вещественные математические Вещественные математические Логические со словами Управление программой Управление программой Управление программой Аккумулятор Преобразования Преобразования Преобразования Управление программой Управление программой Управление программой Загрузка Преобразования Управление программой Счетчики Преобразования CLR COS CU DEC DTB DTR CLR COS ZV DEC DTB DTR Битовые логические Вещественные математические Счетчики Аккумулятор Преобразования Преобразования ENT EXP FN FP FR счетчик FR таймер INC INVD INVI ITB ITD ENT EXP FN FP FR FR INC INVD INVI ITB ITD Аккумулятор Вещественные математические Битовые логические Битовые логические Счетчики Таймеры Аккумулятор Преобразования Преобразования Преобразования Преобразования 8 Деление ACCU 2 на ACCU 1 в формате целых чи Сравнение в формате целых чисел (16-bit) ==, <>, Сложение ACCU 1 и ACCU 2 как чисел с плавающей IEEE-FP) Вычитание ACCU 1 из ACCU 2 в формате чисел с пла (32-бита IEEE-FP) Умножение ACCU 1 и ACCU 2 как чисел с плавающей IEEE-FP) Деление ACCU 2 на ACCU 1 в формате чисел с плаваю бита IEEE-FP) Сравнение чисел с плавающей точкой (32-бита) ==, < Логическое И И с открывающей скобкой Модуль числа с плавающей точкой (32-бита IE Вычисление арккосинуса чисел с плавающей точк Поразрядное И над двойным словом (32-б И-НЕ И-НЕ с открывающей скобкой Вычисление арксинуса чисел с плавающей точко Вычисление арктангенса чисел с плавающей точк Поразрядное И над словом (16-бит) Конец блока Условный конец блока Безусловный конец блока Инструкция отображения программы Преобразование BCD в Double Integer (32Преобразование BCD в Integer (16-бит Изменение последовательности байтов в аккумулято Вызов блока Вызов мультиэкземпляра Вызов блока из библиотеки Обменять адресный регистр 1 с адресным реги Изменить последовательность байтов в ACCU1Условный вызов Уменьшение счетчика Поменять местами регистры глобального блока данных блока данных Сброс RLO (=0) Вычисление косинуса чисел с плавающей точкой Увеличение счетчика Декремент ACCU 1-L-L Преобразование Double Integer (32-бита) в Преобразование Double Integer (32-бита) в число с пла (32-бита IEEE-FP) Ввод в стек ACCU Вычисление экспоненты чисел с плавающей точк Выделение отрицательного фронта Выделение положительного фронта Деблокировка счетчика Деблокировка таймера Инкремент ACCU 1-L-L Инверсия двойного целого числа (32-би Инверсия двойного целого числа (32-би Преобразование Integer (16-бит) в BCD Преобразование Integer (16-бит) в Double Intege JBI JC JCB JCN JL JM JMZ JN JNB JNBI JO JOS JP JPZ JU JUO JZ L L DBLG L DBNO L DILG L DINO L STW L таймер L счетчик LAR1 LAR1 <D> LAR1 AR2 LAR2 LAR2 <D> LC счетчик LC таймер LEAVE LN SPBI SPB SPBB SPBN SPL SPM SPMZ SPN SPBNB SPBIN SPO SPS SPP SPPZ SPA SPU SPZ L L DBLG L DBNO L DILG L DINO L STW L L LAR1 LAR1<D> LAR1 AR2 LAR2 LAR2 <D> LC LC LEAVE LN Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Переходы Загрузка Загрузка Загрузка Загрузка Загрузка Загрузка Таймеры Счетчики Загрузка Загрузка Загрузка Загрузка Загрузка Счетчики Таймеры Аккумулятор Вещественные математические LOOP MCR( )MCR MCRA MCRD MOD NEGD NEGI NEGR NOP 0 NOP 1 NOT O O( OD ON ON( OPN LOOP MCR( )MCR MCRA MCRD MOD NEGD NEGI NEGR NOP 0 NOP 1 NOT O O( OD ON ON( AUF Переходы Управление программой Управление программой Управление программой Управление программой Целые математические Преобразования Преобразования Преобразования Аккумулятор Аккумулятор Битовые логические Битовые логические Битовые логические Логические со словами Битовые логические Битовые логические DB call 9 Перейти при BR = 1 Перейти, при RLO = 1 Перейти при RLO = 1 с сохранением в BR Перейти при RLO = 0 Распределенный переход Перейти, если результат < 0 Перейти, если результат < =0 Перейти, если результат >< 0 Перейти при RLO = 0 с сохрангением в BR Перейти при BR = 0 Перейти при OV = 1 Перейти при OS = 1 Перейти, если результат >0 Перейти, если результат >=0 Безусловный переход Перейти, если результат недействителе Переход при нуле Загрузка в ACCU 1 Загрузка длины глобального DB в ACCU Загрузка номера глобального DB в ACCU Загрузка длины экземплярного DB в ACC Загрузка номера экземплярного DB в ACC Загрузка слова состояния в ACCU 1 Загрузка текущего значения таймера в ACCU 1 в дв Загрузка текущего значения счетчика в ACCU 1 в д Загрузка в адресный регистр1 значения из A Загрузка в адресный регистр1 двойного целого (32-бит Загрузка в адресный регистр1 значения из адресно Загрузка в адресный регистр 2 значения из A Загрузка в адресный регистр2 двойного целого (32-бит Загрузка текущего значения счетчика в ACCU Загрузка текущего значения таймера в ACCU 1 в дв Вывод из стека аккумуляторов Вычисление натурального логарифма чисел с плаваю бита) Инструкция цикла Сохранение RLO в MCR стеке, Начало MCR Конец MCR зоны Активация MCR области Деактивация MCR области Выделение остатка от деления двойных целых чис Инверсия знака двойных целых чисел (32Инверсия знака целых чисел (16-бит) Инверсия знака чисел с плавающей точкой(32-бит Нулевая инструкция Нулевая инструкция Инверсия RLO ИЛИ ИЛИ с открытием скобки Побитовое ИЛИ над двойными словами (32 ИЛИ-НЕ ИЛИ-НЕ с открытием скобки Открыть блок данных OW POP POP POP OW POP POP POP Логические со словами Аккумулятор Аккумулятор Аккумулятор PUSH PUSH PUSH PUSH Аккумулятор Аккумулятор R R счетчик R таймер RLD RLDA RND RND– целого числа RND+ целого числа RRD RRDA S S счетчик SAVE SD SE SET SF SIN SLD SLW SP SQR SQRT SRD SRW SS SSD SSI STL R R R RLD RLDA RND RND– Битовые логические Счетчики Таймеры Сдвиги Сдвиги Преобразования Преобразования RND+ Преобразования RRD RRDA S S SAVE SE SV SET SA SIN SLD SLW SI SQR SQRT SRD SRW SS SSD SSI Сдвиги Сдвиги Битовые логические Счетчики Битовые логические Таймеры Таймеры Битовые логические Таймеры Вещественные математические Сдвиги Сдвиги Таймеры Вещественные математические Вещественные математические Сдвиги Сдвиги Таймеры Сдвиги Сдвиги T T STW TAK TAN TAR1 TAR1 <D> TAR1 AR2 TAR2 TAR2 <D> TRUNC UC X X( XN T T STW TAK TAN TAR1 TAR1 TAR1 TAR2 TAR2 TRUNC UC X X( XN Побитовое ИЛИ над словами (16-бит) POP Аккумулятор 1 <– Аккумулятор 2 (CPU с двумя акк Аккумулятор 1 <– Аккумулятор 2, Аккумулятор 2 <– Аккумулятор 3 <– Аккумулятор 4 (CPU с четырьмя ак Аккумулятор 1 –> Аккумулятор 2 (CPU с двумя акк Аккумулятор 3 –> Аккумулятор 4, Аккумулятор 2 –> Аккумулятор 1 –> Аккумулятор 2 (CPU с четырьмя ак Сброс Сброс счетчика Сброс таймера Циклический сдвиг двойного слова влево (32 Циклический сдвиг двойного слова влево (32-бита Округление Округление до ближайшего меньшего двой Округление до ближайшего большего двой Циклический сдвиг двойного слова вправо (3 Циклический сдвиг двойного слова вправо(32-бита Установка Установить начальное значение счетчик Сохранить RLO в регистре BR Таймер ? формирователь задержки включ Таймер удлиненного импульса Установка RLO в 1 Таймер ? формирователь задержки выключ Синус числа с плавающей точкой (32 бита, IE Сдвинуть влево двойное слово (32 бита Сдвинуть влево слово (16 битов) Таймер ? формирователь импульса Вычисление квадрата числа с плавающей точкой Вычисление квадратного корня числа с плавающей т Сдвинуть вправо двойное слово (32 бит Сдвинуть вправо слово (16 бит) Таймер задержки включения с запоминан Сдвинуть двойное целое число со знаком (32 Сдвинуть целое число со знаком (16 би Это абревиатура названия языка применяется в листи указания типа языка программы Передача Передача ACCU 1 Передача Передача ACCU 1 в слово состояния Аккумулятор Обмен ссодержимым ACCU 1 и ACCU Вещественные математические Вычисление тангенса числа с плавающей точкой (32 Передача Передать адресный регистр 1 в ACCU Передача Передать адресный регистр1 в целевую область (32-би Передача Передать адресный регистр 1 в адресный рег Передача Передать адресный регистр 2 в ACCU Передача Передать адресный регистр 2 в целевую область (32-би Преобразования Округлить до целого отбрасыванием дробно Управление программой Безусловный вызов Битовые логические Исключающее ИЛИ Битовые логические Исключающее ИЛИ с открытием скобк Битовые логические Исключающее ИЛИ-НЕ 10 XN( XOD XOW XN( XOD XOW Битовые логические Логические со словами Логические со словами Исключающее ИЛИ-НЕ с открытием ско Поразрядное Исключающее ИЛИ с двойными слов Поразрядное Исключающее ИЛИ со словами STL инструкции в алфавитном порядке Международной английской мнемоники Английская мнемоника Немецкая мнемоника + = ) +AR1 +AR2 +D –D *D /D ? D +I –I *I /I ? I +R + = ) +AR1 +AR2 +D –D *D /D ? D +I –I *I /I ? I +R –R –R *R *R /R /R ? R A A( ABS ACOS AD AN AN( ASIN ATAN AW BE BEC BEU BLD BTD BTI CAD ? R U U( ABS ACOS UD UN UN( ASIN ATAN UW BE BEB BEA BLD BTD BTI TAD Каталог программных элементов Описание Целые математические Сложение констант целого типа (16, 32би Битовые логические Присвоение Битовые логические Закрывающая скобка Аккумулятор Сложение адресного регистра 1 (AR1) с ACC Аккумулятор Сложение адресного регистра2 (AR2) с ACC Целые математические Сложение ACCU 1 и ACCU 2 как двойных целых чи Целые математические Вычитание ACCU 1 из ACCU 2 в формате двойных целы Целые математические Умножение ACCU 1 и ACCU 2 как двойных целых чи Целые математические Деление ACCU 2 на ACCU 1 как двойных целых чис Сравнение Сравнение двойных целых чисел (32-бита)==, <>, > Целые математические Сложение ACCU 1 и ACCU 2 как целых чисел ( Целые математические Вычитание ACCU 1 из ACCU 2 в формате целых чи Целые математические Умножение ACCU 1 и ACCU 2 как целых чисел Целые математические Деление ACCU 2 на ACCU 1 в формате целых чис Сравнение Сравнение в формате целых чисел (16-bit) ==, <>, > Вещественные математические Сложение ACCU 1 и ACCU 2 как чисел с плавающей т IEEE-FP) Вещественные математические Вычитание ACCU 1 из ACCU 2 в формате чисел с плаваю бита IEEE-FP) Вещественные математические Умножение ACCU 1 и ACCU 2 как чисел с плавающей IEEE-FP) Вещественные математические Деление ACCU 2 на ACCU 1 в формате чисел с плавающ бита IEEE-FP) Сравнение Сравнение чисел с плавающей точкой (32-бита) ==, < Битовые логические Логическое И Битовые логические И с открывающей скобкой Вещественные математические Модуль числа с плавающей точкой (32-бита IE Вещественные математические Вычисление арккосинуса чисел с плавающей точко Логические со слоаами Поразрядное И над двойным словом (32-би Битовые логические И-НЕ Битовые логические И-НЕ с открывающей скобкой Вещественные математические Вычисление арксинуса чисел с плавающей точкой Вещественные математические Вычисление арктангенса чисел с плавающей точко Логические со словами Поразрядное И над словом (16-бит) Управление программой Конец блока Управление программой Условный конец блока Управление программой Безусловный конец блока Аккумулятор Инструкция отображения программы Преобразования Преобразование BCD в Double Integer (32-б Преобразования Преобразование BCD в Integer (16-бит) Преобразования Изменение последовательности байтов в аккумулятор 11 CALL CALL МЭ CALL ББ CAR CAW CC CD CDB CALL CALL CALL TAR TAW CC ZR TDB CLR COS CU DEC DTB DTR CLR COS ZV DEC DTB DTR ENT EXP FN FP FR счетчик FR таймер INC INVD INVI ITB ITD JBI JC JCB JCN JL JM JMZ JN JNB JNBI JO JOS JP JPZ JU JUO JZ L L DBLG L DBNO L DILG L DINO L STW L таймер L счетчик LAR1 ENT EXP FN FP FR FR INC INVD INVI ITB ITD SPBI SPB SPBB SPBN SPL SPM SPMZ SPN SPBNB SPBIN SPO SPS SPP SPPZ SPA SPU SPZ L L DBLG L DBNO L DILG L DINO L STW L L LAR1 Управление программой Управление программой Управление программой Загрузка Преобразования Управление программой Счетчики Преобразования Вызов блока Вызов мультиэкземпляра Вызов блока из библиотеки Обменять адресный регистр 1 с адресным регис Изменить последовательность байтов в ACCU1-L Условный вызов Уменьшение счетчика Поменять местами регистры глобального блока данных блока данных Битовые логические Сброс RLO (=0) Вещественные математические Вычисление косинуса чисел с плавающей точкой Счетчики Увеличение счетчика Аккумулятор Декремент ACCU 1-L-L Преобразования Преобразование Double Integer (32-бита) в B Преобразования Преобразование Double Integer (32-бита) в число с плаваю бита IEEE-FP) Аккумулятор Ввод в стек ACCU Вещественные математические Вычисление экспоненты чисел с плавающей точко Битовые логические Выделение отрицательного фронта Битовые логические Выделение положительного фронта Счетчики Деблокировка счетчика Таймеры Деблокировка таймера Аккумулятор Инкремент ACCU 1-L-L Преобразования Инверсия двойного целого числа (32-бита Преобразования Инверсия двойного целого числа (32-бита Преобразования Преобразование Integer (16-бит) в BCD Преобразования Преобразование Integer (16-бит) в Double Integer Переходы Перейти при BR = 1 Переходы Перейти, при RLO = 1 Переходы Перейти при RLO = 1 с сохранением в BR б Переходы Перейти при RLO = 0 Переходы Распределенный переход Переходы Перейти, если результат < 0 Переходы Перейти, если результат < =0 Переходы Перейти, если результат >< 0 Переходы Перейти при RLO = 0 с сохрангением в BR б Переходы Перейти при BR = 0 Переходы Перейти при OV = 1 Переходы Перейти при OS = 1 Переходы Перейти, если результат >0 Переходы Перейти, если результат >=0 Переходы Безусловный переход Переходы Перейти, если результат недействителен Переходы Переход при нуле Загрузка Загрузка в ACCU 1 Загрузка Загрузка длины глобального DB в ACCU Загрузка Загрузка номера глобального DB в ACCU Загрузка Загрузка длины экземплярного DB в ACCU Загрузка Загрузка номера экземплярного DB в ACCU Загрузка Загрузка слова состояния в ACCU 1 Таймеры Загрузка текущего значения таймера в ACCU 1 в дво Счетчики Загрузка текущего значения счетчика в ACCU 1 в дв Загрузка Загрузка в адресный регистр1 значения из AC 12 LAR1 <D> LAR1 AR2 LAR2 LAR2 <D> LC счетчик LC таймер LEAVE LN LOOP MCR( )MCR MCRA MCRD MOD NEGD NEGI NEGR NOP 0 NOP 1 NOT O O( OD ON ON( OPN OW POP POP POP LAR1<D> LAR1 AR2 LAR2 LAR2 <D> LC LC LEAVE LN LOOP MCR( )MCR MCRA MCRD MOD NEGD NEGI NEGR NOP 0 NOP 1 NOT O O( OD ON ON( AUF OW POP POP POP PUSH PUSH PUSH PUSH R R счетчик R таймер RLD RLDA RND RND– RND+ RRD RRDA S S счетчик SAVE SD SE SET SF SIN SLD R R R RLD RLDA RND RND– RND+ RRD RRDA S S SAVE SE SV SET SA SIN SLD Загрузка Загрузка в адресный регистр1 двойного целого (32-бито Загрузка Загрузка в адресный регистр1 значения из адресног Загрузка Загрузка в адресный регистр 2 значения из AC Загрузка Загрузка в адресный регистр2 двойного целого (32-бито Счетчики Загрузка текущего значения счетчика в ACCU 1 Таймеры Загрузка текущего значения таймера в ACCU 1 в дво Аккумулятор Вывод из стека аккумуляторов Вещественные математические Вычисление натурального логарифма чисел с плавающей Переходы Инструкция цикла Управление программой Сохранение RLO в MCR стеке, Начало MCR Управление программой Конец MCR зоны Управление программой Активация MCR области Управление программой Деактивация MCR области Целые математические Выделение остатка от деления двойных целых чисе Преобразования Инверсия знака двойных целых чисел (32-б Преобразования Инверсия знака целых чисел (16-бит) Преобразования Инверсия знака чисел с плавающей точкой(32-бита Аккумулятор Нулевая инструкция Аккумулятор Нулевая инструкция Битовые логические Инверсия RLO Битовые логические ИЛИ Битовые логические ИЛИ с открытием скобки Логические со словами Побитовое ИЛИ над двойными словами (32Битовые логические ИЛИ-НЕ Битовые логические ИЛИ-НЕ с открытием скобки Открыть блок данных DB call Логические со словами Побитовое ИЛИ над словами (16-бит) Аккумулятор POP Аккумулятор Аккумулятор 1 <– Аккумулятор 2 (CPU с двумя акку Аккумулятор Аккумулятор 1 <– Аккумулятор 2, Аккумулятор 2 <– А Аккумулятор 3 <– Аккумулятор 4 (CPU с четырьмя ак Аккумулятор Аккумулятор 1 –> Аккумулятор 2 (CPU с двумя акку Аккумулятор Аккумулятор 3 –> Аккумулятор 4, Аккумулятор 2 –> А Аккумулятор 1 –> Аккумулятор 2 (CPU с четырьмя акк Битовые логические Сброс Счетчики Сброс счетчика Таймеры Сброс таймера Сдвиги Циклический сдвиг двойного слова влево (32Сдвиги Циклический сдвиг двойного слова влево (32-бита) Преобразования Округление Преобразования Округление до ближайшего меньшего двойного це Преобразования Округление до ближайшего большего двойного це Сдвиги Циклический сдвиг двойного слова вправо (32 Сдвиги Циклический сдвиг двойного слова вправо(32-бита) Битовые логические Установка Счетчики Установить начальное значение счетчика Битовые логические Сохранить RLO в регистре BR Таймеры Таймер ? формирователь задержки включен Таймеры Таймер удлиненного импульса Битовые логические Установка RLO в 1 Таймеры Таймер ? формирователь задержки выключе Вещественные математические Синус числа с плавающей точкой (32 бита, IEE Сдвиги Сдвинуть влево двойное слово (32 бита) 13 SLW SP SQR SQRT SRD SRW SS SSD SSI STL SLW SI SQR SQRT SRD SRW SS SSD SSI Сдвиги Таймеры Вещественные математические Вещественные математические Сдвиги Сдвиги Таймеры Сдвиги Сдвиги T T STW TAK TAN TAR1 TAR1 <D> TAR1 AR2 TAR2 TAR2 <D> TRUNC UC X X( XN XN( XOD XOW T T STW TAK TAN TAR1 TAR1 TAR1 TAR2 TAR2 TRUNC UC X X( XN XN( XOD XOW Передача Передача Аккумулятор Вещественные математические Передача Передача Передача Передача Передача Преобразования Управление программой Битовые логические Битовые логические Битовые логические Битовые логические Логические со словами Логические со словами 14 Сдвинуть влево слово (16 битов) Таймер ? формирователь импульса Вычисление квадрата числа с плавающей точкой Вычисление квадратного корня числа с плавающей то Сдвинуть вправо двойное слово (32 бита Сдвинуть вправо слово (16 бит) Таймер задержки включения с запоминани Сдвинуть двойное целое число со знаком (32 Сдвинуть целое число со знаком (16 бит Это абревиатура названия языка применяется в листин указания типа языка программы Передача ACCU 1 Передача ACCU 1 в слово состояния Обмен ссодержимым ACCU 1 и ACCU 2 Вычисление тангенса числа с плавающей точкой (32 б Передать адресный регистр 1 в ACCU 1 Передать адресный регистр1 в целевую область (32-бит Передать адресный регистр 1 в адресный реги Передать адресный регистр 2 в ACCU 1 Передать адресный регистр 2 в целевую область (32-бит Округлить до целого отбрасыванием дробной Безусловный вызов Исключающее ИЛИ Исключающее ИЛИ с открытием скобки Исключающее ИЛИ-НЕ Исключающее ИЛИ-НЕ с открытием скоб Поразрядное Исключающее ИЛИ с двойными слова Поразрядное Исключающее ИЛИ со словами (