# Элементы Исключающее ИЛИ/Исключающее ИЛИ-НЕ/Нечётность/Чётность

Библиотека: | Элементы
Введён в: | 2.0 Beta 1 для Исключающее ИЛИ/Нечётность/Чётность; 2.0 Beta 6 для Исключающее ИЛИ-НЕ

Внешний вид:

| Исключающее ИЛИ | Исключающее ИЛИ-НЕ | Нечётность | Чётность
--- | --- | --- | --- | ---
Фигурные: |
Прямоугольные:

## Поведение

Элементы Исключающее ИЛИ, Исключающее ИЛИ-НЕ, Нечётность и Чётность вычисляют соответствующую функцию от значений на входах и выдают результат на выход.

По умолчанию, неподключенные входы игнорируются - то есть, если входы действительно не имеют ничего подключенного к ним - даже провода. Таким образом, вы можете добавить 5-входовый элемент, но подключить только два входа, и он будет работать как 2-входовый элемент; это избавляет вас от необходимости беспокоиться о настройке количества входов каждый раз при создании элемента. (Если все входы не подключены, то на выходе значение ошибки X.) Некоторые пользователи, однако, предпочитают, чтобы Logisim настаивал, чтобы все входы были подключены, поскольку это соответствует реальным элементам. Вы можете включить это поведение, выбрав меню Проект > Параметры…, перейдя на вкладку Моделирование, и выбрав вариант Ошибка для неопределённых входов для Выход элемента при неопределённости.

Двухвходовая таблица истинности для элементов следующая.

x | y | Исключающее ИЛИ | Исключающее ИЛИ-НЕ | Нечётность | Чётность
--- | --- | --- | --- | --- | ---
0 | 0 | 0 | 1 | 0 | 1
0 | 1 | 1 | 0 | 1 | 0
1 | 0 | 1 | 0 | 1 | 0
1 | 1 | 0 | 1 | 0 | 1

Как вы можете видеть, элементы Нечётность и Исключающее ИЛИ ведут себя одинаково в случае двух входов; аналогично, элементы Чётность и Исключающее ИЛИ-НЕ ведут себя одинаково. Но если входов с определённым значением больше двух, то элемент Исключающее ИЛИ будет давать на выходе 1, когда единица строго на одном входе, тогда как элемент Нечётность даст на выходе 1, когда единица на нечётном количестве входов. Элемент Исключающее ИЛИ-НЕ будет давать на выходе 1, когда входов с единицей строго не один, тогда как элемент Чётность даст 1, когда входов с единицей чётное количество. Элементы Исключающее ИЛИ и Исключающее ИЛИ-НЕ имеют атрибут, названный Многовходовое поведение, который позволяет настроить их на использование поведения элементов Нечётность и Чётность.

Если на каких-либо входах значение ошибки (например, если противоречивые значения поступают на один и тот же провод) или плавающее значение, то на выходе будет значение ошибки.

Многобитные версии каждого элемента будут выполнять свои однобитные преобразования над входами поразрядно.

Примечание: многие специалисты утверждают, что поведение фигурного элемента Исключающее ИЛИ должно соответствовать поведению элемента Нечётность, но по этому вопросу нет согласия. Поведение Logisim по умолчанию для элемента Исключающее ИЛИ основано на стандарте IEEE 91. Это также согласуется с интуитивным пониманием термина Исключающее ИЛИ: официант, спрашивающий, хотите вы гарнир из картофельного пюре, моркови, зеленого горошка, или шинкованной капусты, примет только один выбор, а не три, независимо от того, что вам могут сказать некоторые специалисты. (Должен признать, однако, что я не подвергал это заявление серьезным испытаниям.) Вы можете настроить элементы Исключающее ИЛИ и Исключающее ИЛИ-НЕ на использование одного из вариантов, меняя его атрибут Многовходовое поведение.

## Контакты (предполагается, что компонент направлен на восток)

Западный край (входы, разрядность соответствует атрибуту Биты данных)

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

  Заметьте, что если вы используете фигурные элементы, то западный край элементов Исключающее ИЛИ и Исключающее ИЛИ-НЕ будет искривлён. Тем не менее, входные контакты расположены вряд. Logisim отрисовывает короткие отрезки чтобы показать это; если вы перекроете отрезок, программа будет без предупреждений предполагать, что вы не хотели перекрыть его. При использовании "Вида для печати", эти отрезки не будут отрисованы, если не подключены к проводам.

Восточный край (выход, разрядность соответствует атрибуту Биты данных)

  Выход элемента, значение на котором вычисляется на основании текущих значений на входах, как описано выше.

## Атрибуты

Когда компонент выбран, или уже добавлен, клавиши от 0 до 9 меняют его атрибут Количество входов, комбинации от Alt-0 до Alt-9 меняют его атрибут Биты данных, а клавиши со стрелками меняют его атрибут Направление.

Направление
  Направление компонента (его выхода относительно его входов).
Биты данных
  Разрядность входов и выходов компонента.
Размер элемента
  Определяет, следует отрисовывать широкую или узкую версию компонента. Это не влияет на количество входов, которое определяется атрибутом Количество входов; правда, если количество входов превышает 3 (для узкого компонента) или 5 (для широкого), то элемент будет отрисовываться с "крыльями", чтобы вместить запрошенное количество входов.
Количество входов
  Определяет, сколько контактов на западном крае будет иметь компонент.
Выходное значение
  Указывает, как результаты "ложь" и "истина" будут переведены в выходные значения. По умолчанию "ложь" обозначается напряжением низкого уровня (0), а "истина" - напряжением высокого уровня (1), но одно из них может быть заменено высокоимпедансным (плавающим) значением. Это позволяет создавать соединения "монтажное ИЛИ" и "монтажное И", как показано в статье документации Элементы И/ИЛИ/И-НЕ/ИЛИ-НЕ.
Метка
  Текст внутри метки, привязанной к элементу.
Шрифт метки
  Шрифт, которым отрисовывается метка.
Многовходовое поведение (только для Исключающее ИЛИ и Исключающее ИЛИ-НЕ)
  Когда входов три или более, то значение на выходе элементов Исключающее ИЛИ и Исключающее ИЛИ-НЕ будет основано или на том, что 1 строго на одном входе (по умолчанию), или на нечётном количестве входов.

## Поведение Инструмента Нажатие

Нет.

## Поведение Инструмента Текст

Позволяет редактировать привязанную к элементу метку.

Назад к Справке по библиотеке