1lytics

Создание карт Карно из текстовой таблицы истинности

Создание набора функций из текстовой таблицы истинности - это второй основной способ зания набора функций. Для создания набора функций из текстового описания таблицы истинности выберите пункт меню “File” — “New” — “From truth table”. Следующий диалог будет отображен на экране:

Диалог Ввода Таблицы Истинности

В данной диалоге вы можете видеть следующие элементы управления: 1) основное поле ввода; 2) Кнопки для отображения примеров/вставки из буфера/загрузки данных из файла; 3) таблицу опций обработки ввода и создания системы функций. Кнопки предназначены для:

  • Show - заменяет содержимое окна редактирования одним из заданных примеров (выбирается в выпадающем списке слева);
  • Paste - вставляет содержимое буфера обмена в поле ввода;
  • Load - загружает данные из файла с использованием диалога “Open File”.

Две формы текстового представления таблицы истинности

При вводе текстовой таблицы истинности, вы должны задать ее тип в первой сточке: “#TABLE” or “#SET” (все остальные строки, начинающиеся с символа “#” считаются коментариями).

Тип текстовой таблицы истинности “#TABLE” представляет собой ТИ как набор строк, в каждой из которых вектор выходных значений следует после вектора входных значений и входные значения отделены от выходных специальным разделителем (обычно “=>”). Значения во входном и выходном векторах могу быть разделены символами “,” или “ ” (space), или могут быть записаны слитно.

Тип текстовой таблицы истинности “#SET” представляет собой ТИ как набор строк, в каждой из которых расположена имя выходной функция, имена входных переменных и вектор значений функции, отделенный от имен специальным разделителем (обычно “=>”).

В текстовой форме таблицы истинности вы можете использовать “0”, “l” или “L” для задания значения “Ложно”; “1”, “t” или “T” для задания значения “Истинно” и “-”, “z”, “Z”, “u” or “U” для задания неопределенного значения.

Примеры текстовых таблиц истинности

Примеры текстовых таблиц истинности приведены на листинге ниже:


#TABLE: a,b => xor,nor,nand,undefs
# Строка коментария, игнорируется
00 => 0110
01 => 1011
1,0 => 1,0,1,-
1 1 => 0,0,0,-

#SET
# Строка коментария, игнорируется
#    ab   00,01,10,11
xor: a,b => 0,1,1,0
nor: a,b => 1,0,0,0
nand: a,b => 1,1,1,0
undefs: a,b => 0,1,-