Логический оператор

Выполните заданную логическую операцию на входном параметре

  • Библиотека:
  • Simulink / Обычно Используемые Блоки

    Simulink / Логика и Битовые операции

Описание

Блок Logical Operator выполняет заданную логическую операцию на своих входных параметрах. Входное значение верно (1), если это является ненулевым и ложь (0), если это - нуль.

Вы выбираете Логическую операцию, соединяющую входные параметры со списком параметров Оператора. Если вы выбираете rectangular как свойство формы Значка, блок обновляет, чтобы отобразить имя выбранного оператора. Поддерживаемые операции:

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

И

ВЕРНЫЙ, если все входные параметры ВЕРНЫ

ИЛИ

ВЕРНЫЙ, если по крайней мере один входной параметр ВЕРЕН

НЕ - И

ВЕРНЫЙ, если по крайней мере один входной параметр является ЛОЖНЫМ

NOR

ВЕРНЫЙ, когда никакие входные параметры не ВЕРНЫ

Xor

ВЕРНЫЙ, если нечетное число входных параметров ВЕРНО

NXOR

ВЕРНЫЙ, если четное число входных параметров ВЕРНО

НЕТ

ВЕРНЫЙ, если входной параметр является ЛОЖНЫМ

Если вы выбираете distinctive как форму Значка, блочный внешний вид указывает на свою функцию. Программное обеспечение Simulink® отображает отличительную форму для выбранного оператора, соответствуя IEEE® Standard Graphic Symbols для Логических функций:

Количество входных портов задано с Количеством параметра входных портов. Выходной тип задан с параметром типа Выходных данных. Выходным значением является 1 если ВЕРНЫЙ и 0 если ЛОЖЬ.

Примечание

Тип выходных данных должен представлять нуль точно. Типы данных, которые удовлетворяют это условие, включают целые числа со знаком и беззнаковое целое и любой тип данных с плавающей точкой.

Размер вывода зависит от размера входного вектора и выбранного оператора:

  • Если блок имеет больше чем один входной параметр, любые нескалярные входные параметры должны иметь те же размерности. Например, если какой-либо входной параметр является массивом 2 на 2, все другие нескалярные входные параметры должны также быть массивами 2 на 2.

    Скалярные входные параметры расширены, чтобы иметь те же размерности как нескалярные входные параметры.

    Если блок имеет больше чем один входной параметр, вывод имеет те же размерности как входные параметры (после скалярного расширения), и каждый выходной элемент является результатом применения заданной логической операции к соответствующим входным элементам. Например, если заданной операцией является AND, и входные параметры являются массивами 2 на 2, вывод является массивом 2 на 2, левый верхний элемент которого является результатом применения AND к левым верхним элементам входных параметров и т.д.

  • Для единственного векторного входного параметра блок применяет операцию (кроме НЕ оператора) ко всем элементам вектора. Вывод всегда является скаляром.

  • НЕ оператор принимает только один входной параметр, который может быть скаляром или вектором. Если входной параметр является вектором, вывод является вектором, одного размера содержащий логические дополнения элементов входного вектора.

Когда сконфигурировано как мультивходной параметр логический элемент XOR, этот блок выполняет сложение - по модулю две операции, как передано под мандат Стандартом IEEE для Логических Элементов.

Порты

Входной параметр

развернуть все

Первый входной сигнал, заданный как скаляр, вектор или матрица.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | булевская переменная | фиксированная точка

Второй входной сигнал, заданный как скаляр, вектор или матрица.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | булевская переменная | фиксированная точка

Энный входной сигнал, заданный как скаляр, вектор или матрица.

Зависимости

Чтобы включить дополнительные входные порты, используйте Количество параметра входных портов.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | булевская переменная | фиксированная точка

Вывод

развернуть все

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

Типы данных: единственный | удваиваются | int8 | int16 | int32 | uint8 | uint16 | uint32 | булевская переменная | фиксированная точка

Параметры

развернуть все

Основной

Выберите логический оператор, чтобы применяться к блочным входным параметрам.

  • AND — ВЕРНЫЙ, если все входные параметры ВЕРНЫ

  • OR — ВЕРНЫЙ, если по крайней мере один входной параметр ВЕРЕН

  • NAND — ВЕРНЫЙ, если по крайней мере один входной параметр является ЛОЖНЫМ

  • NOR — ВЕРНЫЙ, когда никакие входные параметры не ВЕРНЫ

  • Xor ВЕРНЫЙ, если нечетное число входных параметров ВЕРНО

  • NXOR — ВЕРНЫЙ, если четное число входных параметров ВЕРНО

  • Xor ВЕРНЫЙ, если входной параметр является ЛОЖНЫМ

Программируемое использование

Блочный параметр: Оператор
Ввод: символьный вектор
Значения: 'И' | 'ИЛИ' | 'НЕ - И' | 'NOR' | 'XOR' | 'NXOR' | 'НЕТ'
Значение по умолчанию: 'AND'

Задайте количество блочных входных параметров как положительное целое число.

Программируемое использование

Блочный параметр: Inputs
Ввод: символьный вектор
Значения: положительное целое число
Значение по умолчанию: '2'

Зависимости

Этот параметр не доступен, когда вы устанавливаете Оператор на NOT.

Задайте форму блочного значка.

  • rectangular — Результаты в прямоугольном блоке, который отображает имя выбранного оператора.

  • distinctive — Используйте графический символ для выбранного оператора, как задано стандартом IEEE.

Программируемое использование

Блочный параметр: IconShape
Ввод: символьный вектор
Значения: 'прямоугольный' | 'отличительный'
Значение по умолчанию: 'rectangular'

Задайте частоту дискретизации как значение кроме-1. Для получения дополнительной информации см. Настройку времени выборки.

Зависимости

Этот параметр не видим, если он явным образом не установлен в значение кроме -1. Чтобы узнать больше, смотрите Блоки, для Которых Не Рекомендуется Частота дискретизации.

Программируемое использование

Блочный параметр: 'SampleTime'
Ввод: символьный вектор
Значения: скаляр
Значение по умолчанию: '-1'

Тип данных

Чтобы потребовать, чтобы все блочные входные параметры и вывод имели совпадающий тип данных, установите этот флажок. То, когда вы снимаете этот флажок, входные параметры и выводите, может иметь различные типы данных.

Программируемое использование

Блочный параметр: AllPortsSameDT
Ввод: символьный вектор
Значения: 'off' | 'на
Значение по умолчанию: 'off'

Задайте тип выходных данных. Когда вы выбираете:

  • boolean — блок вывод имеет тип данных boolean.

  • Inherit: Logical (see Configuration Parameters: Optimization) — блок использует сигналы логики Реализации в качестве параметра конфигурации булевых данных (см. сигналы логики Реализации как булевы данные (по сравнению с двойным)) задавать тип выходных данных.

    Примечание

    Эта опция поддерживает модели, созданные, прежде чем опция boolean была доступна. Используйте одну из других опций, предпочтительно boolean, для новых моделей.

  • fixdt(1,16) — блок вывод имеет заданный тип данных фиксированной точки fixdt(1,16).

    Совет

    Нажмите ассистент типа данных Show кнопка, чтобы отобразить Ассистент Типа данных, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.

  • <data type expression> — блок вывод имеет тип данных, который вы задаете как выражение типа данных, например, Simulink.NumericType.

    Совет

    Ввести встроенный тип данных (double, single, int8, uint8, int16, uint16, int32, или uint32), заключают выражение в одинарные кавычки. Например, введите 'double' вместо double.

Программируемое использование

Блочный параметр: OutDataTypeStr
Ввод: символьный вектор
Значения: 'Наследуйтесь: Логический (см. Параметры конфигурации: Оптимизация)' | 'булевская переменная' | 'fixdt (1,16)' |' <выражение типа данных>'
Значение по умолчанию: 'boolean'

Образцовые примеры

Блокируйте характеристики

Типы данных

double | single | Boolean | base integer | fixed point

Прямое сквозное соединение

Yes

Многомерные сигналы

Yes

Сигналы переменного размера

Yes

Обнаружение пересечения нулем

No

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Генерация кода PLC
Сгенерируйте код Структурированного текста с помощью Simulink® PLC Coder™.

Преобразование фиксированной точки
Преобразуйте алгоритмы с плавающей точкой в фиксированную точку с помощью Фиксированной точки Designer™.

Представлено до R2006a

Была ли эта тема полезной?