Задания и методические указания к их выполнению. 1. Из таблицы в соответствии с номером варианта N (номер по списку группы) выбрать выражение исходной ФАЛ: N Выражение N Выражение

1. Из таблицы в соответствии с номером варианта N (номер по списку группы) выбрать выражение исходной ФАЛ:

N Выражение N Выражение
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   

2. Определить тип и количество логических элементов, необходимых для реализации исходной ФАЛ:

Тип Реализуемая операция Количество ЛЭ
     

…………………………………………………………

     
Всего  

Например, реализация ФАЛ у = требует логические элементы:

Тип Реализуемая операция Количество ЛЭ
НЕ Инверсия  
ИЛИ Дизъюнкция  
И-НЕ Штрих Шеффера  
ИЛИ-НЕ Стрелка Пирса  
Всего  

3. Упростить исходное выражение до двух логических операций.

Чтобы получить компактную запись сложного выражения, прежде всего, целесообразно заменить в нем такие элементарные ФАЛ, как стрелка Пирса, штрих Шеффера, исключающее ИЛИ и эквивалентность их сложной формой записи. При этом необходимо помнить, что порядок вычисления логического выражения определяется тремя основными факторами:

– скобки. Выражения в скобках всегда вычисляются первыми;

– приоритет операций. По убыванию приоритета логические операции располагаются в следующем порядке:

§ инверсия отдельного аргумента,

§ штрих Шеффера, стрелка Пирса, эквивалентность,

§ конъюнкция,

§ операции типа дизъюнкции – собственно дизъюнкция и исключающее ИЛИ (неравнозначность);

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

Например, выражение следует переписать как .

Затем в полученном выражении с помощью законов и тождеств алгебры логики, а также сложной формой записи элементарных ФАЛ добиваются наименьшего числа операций. При этом в случае использования закона двойственности знак общей инверсии преобразуется в скобки.

Так, для приведенного примера:

4. С помощью системы MATLAB проверить эквивалентность исходной и упрощенной ФАЛ.

Различные ФАЛ от одного и того же количества аргументов эквивалентны, если на всем множестве входных двоичных наборов их значения совпадают.

В системе MATLAB значения ФАЛ можно получить следующим образом. В командном окне (Command Window) системы MATLAB построчно в виде векторов-строк вводятся значения аргументов ФАЛ в соответствии с последовательностью входных двоичных наборов (табл. 1). При этом соседние элементы вектора-строки разделяются пробелом, а командная строка завершается символом «;», который означает запрет вывода на экран результата выполнения данной командной строки после перехода на следующую строку путем нажатия клавиши Enter.

После этого в очередной командной строке вводится ФАЛ, логическое выражение которой записывается с помощью стандартных для языка MATLAB операторов или функций (табл. 2). При этом в конце командной строки символ «;» не ставится, что после нажатия клавиши Enter обусловливает вывод на экран результатов вычислений в виде вектора-строки с указанием имени функции (см. табл. 1).

Пример записи ФАЛ с помощью операторов языка MATLAB приведен в табл. 1. Конечно, ФАЛ можно записать и с помощью только функций MATLAB, например

Y1=or(not(and(A,or(B,not(C)))),not(or(not(B),C))),

Y2=not(and(A,not(xor(B,C)))).

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

5. Определить тип и количество логических элементов, необходимых для реализации полученной ФАЛ. На основании сравнения с таблицей п.2 работы сделать вывод относительно целесообразности упрощения ФАЛ.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: