logo

Перетворення між канонічними формами

У нашому попередньому розділі ми дізналися про вирази SOP (сума добутку) і POS (добуток суми) і розрахували форми POS і SOP для різних булевих функцій. У цьому розділі ми дізнаємося, як ми можемо представити форму POS у формі SOP і форму SOP у формі POS.

Для перетворення канонічних виразів потрібно змінити символи ∏, ∑. Ці символи змінюються, коли ми перераховуємо номери індексів рівнянь. З початкової форми рівняння ці числа виключені. Форми SOP і POS логічної функції є подвійними один до одного.

Є наступні кроки, за допомогою яких ми можемо легко перетворити канонічні форми рівнянь:

  1. Змініть символи операцій, які використовуються в рівнянні, наприклад ∑, ∏.
  2. Використовуйте принцип Де-Моргана дуальності, щоб написати індекси термінів, які не представлені в заданій формі рівняння, або номери індексів булевої функції.

Перетворення POS у форму SOP

Щоб отримати форму SOP з форми POS, ми повинні змінити символ ∏ на ∑. Після цього записуємо числові індекси відсутніх змінних заданої булевої функції.

Існують наступні кроки для перетворення функції POS F = Π x, y, z (2, 3, 5) = x y' z' + x y' z + x y z' у форму SOP:

  1. На першому кроці ми змінюємо операційний знак на Σ.
  2. Далі ми знаходимо відсутні індекси термінів 000, 110, 001, 100 і 111.
  3. Нарешті, запишемо форму добутку зазначених термінів.

000 = x' * y' * z'

001 = x' * y' * z

100 = x * y' * z'

індекс java

110 = x * y* z'

111 = x * y * z

Отже, форма SOP виглядає так:

F = Σ x, y, z (0, 1, 4, 6, 7) = (x' * y' * z') + (x' * y' * z) + (x * y' * z') + (x * y* z') + (x * y * z)

Перетворення форми SOP на форму POS

Щоб отримати форму POS даного виразу форми SOP, ми змінимо символ ∏ на ∑. Після цього ми запишемо числові індекси змінних, яких не вистачає в логічній функції.

Для перетворення функції SOP F = ∑ x, y, z (0, 2, 3, 5, 7) = x' y' z' + z y' z' + x y' z + xyz' + xyz в POS:

  • На першому кроці ми змінюємо операційний знак на ∏.
  • Знаходимо відсутні індекси термінів 001, 110 і 100.
  • Записуємо форму суми відзначених доданків.

001 = (x + y + z)

100 = (x + y' + z')

110 = (x + y' + z')

Отже, форма POS:

F = Π x, y, z (1, 4, 6) = (x + y + z) * (x + y' + z') * (x + y' + z')

Перетворення форми СОП на стандартну форму СОП або канонічну форму СОП

Щоб отримати стандартну форму SOP даної нестандартної форми SOP, ми додамо всі змінні в кожен термін продукту, які не мають усіх змінних. Використовуючи булев алгебраїчний закон (x + x' = 0) і виконавши наведені нижче дії, ми можемо легко перетворити нормальну функцію SOP у стандартну форму SOP.

рядок підрядок java
  • Помножте кожен нестандартний термін продукту на суму його відсутньої змінної та її доповнення.
  • Повторюйте крок 1, доки всі кінцеві умови продукту не міститимуть усі змінні
  • Для кожної відсутньої змінної у функції кількість термінів продукту подвоюється.

приклад:

Перетворіть нестандартну функцію SOP F = AB + A C + B C

сонце:

F = A B + A C + B C
= A B (C + C') + A (B + B') C + (A + A') B C
= A B C + A B C' + A B C + A B' C + A B C + A' B C
= A B C + A B C' + A B' C + A' B C

Отже, стандартна форма SOP нестандартної форми F = A B C + A B C' + A B' C + A' B C

array.з java

Перетворення форми POS на стандартну форму POS або форму Canonical POS

Щоб отримати стандартну форму POS даної нестандартної форми POS, ми додамо всі змінні в кожен термін продукту, які не мають усіх змінних. Використовуючи булев алгебраїчний закон (x * x' = 0) і виконуючи наведені нижче дії, ми можемо легко перетворити звичайну функцію POS у стандартну форму POS.

  • Додаючи кожен нестандартний підсумковий член до добутку його відсутньої змінної та його доповнення, що призводить до 2 сумарних членів
  • Застосовуючи булев алгебраїчний закон, x + y z = (x + y) * (x + z)
  • Повторюючи крок 1, доки всі результуючі члени суми не міститимуть усі змінні

За допомогою цих трьох кроків ми можемо перетворити функцію POS на стандартну функцію POS.

приклад:

F = (p' + q + r) * (q' + r + s') * (p + q' + r' + s)

1. Член (p' + q + r)

Як ми бачимо, у цьому терміні відсутня змінна s або s'. Отже, ми додаємо s*s' = 1 до цього члена.

(p' + q + r + s*s') = (p' + q + r + s) * (p' + q + r + s')

2. Термін (q' + r + s')

Так само ми додаємо p*p' = 1 до цього члена, щоб отримати член, який містить усі змінні.

(q' + r + s' + p*p') = (p + q' + r + s') * (p' + q' + r + s')

3. Термін (q' + r + s')

Тепер немає потреби нічого додавати, оскільки всі змінні містяться в цьому терміні.

Отже, рівняння функції у стандартній формі POS є

F = (p' + q + r + s)* (p' + q + r + s')* (p + q' + r + s')* (p' + q' + r + s') * (p + q' + r' + s)