2016-01-08 2 views
1

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

   Table 1 
       ------- 
        WZ 
     00 01 11 10 
     ----------------------- 
    00 |  | | | 1 | 
     ----------------------- 
    01 | 1 | | |  | 
     ----------------------- 
XY 11 |  | | | 1 | 
     ----------------------- 
    10 | 1 | | |  | 
     ----------------------- 


       Table 2 
       ------- 
        WZ 
     00  01 11 10 
     ----------------------- 
    00 |  | 1 |  | | 
     ----------------------- 
    01 |  |  | 1 | | 
     ----------------------- 
XY 11 |  | 1 |  | | 
     ----------------------- 
    10 |  |  | 1 | | 
     ----------------------- 

Это XORs, но как я могу легко вывести выражения XOR?

+0

Непонятно для меня. Что вы подразумеваете под выводом выражений XOR? – axelduch

+0

Ну, каковы выражения из приведенных выше таблиц? Единственная идея, которую я имею, это то, что они XOR. Как можно сказать в первом, это может быть X xor Y xor Z xor W ... но я сомневаюсь, что это правильно –

ответ

-1

Первая таблица содержит выражение Xor:

`First table` 
         w 
    \ wz   ___________ 
xy \-----------------------+ 
    |  |  |  | 1 | 
    +-----+-----+-----+-----+ 
    | 1 |  |  |  | | 
    +-----+-----+-----+-----+ | y 
    | |  |  |  | 1 | | 
x | +-----+-----+-----+-----+ 
    | | 1 |  |  |  | 
    +-----------------------+ 
      ___________ 
       z 

, как вы могли видеть на середину стола (Z области) является подделкой. то есть функция таблицы:

 
F(Table1) = w'x'yz' + wx'y'z' + w'xy'z' + wxyz' 

in binary form you could see a zero column : 

F(Table) = 0010 eliminating Z F(xor)= 001 
      0100 ---------------\   010 
      1110 ---------------/   111 
      1000       100 
       ^--> fake 

и финальный стол должен быть чем-то вроде этого:

`simplified xor table` 
       w 
     \ w 0 __1__ 
    xy \-----------+ 
    00 |  | 1 | 
     +-----+-----+ 
    01 | 1 |  | | 
     +-----+-----+ | y And " F = wy' + w'y " is an Xor only 
    |10 | 1 |  | |  between 2 variables, right? 
x | +-----+-----+ 
    |11 |  | 1 | 
     +-----------+ 


Вторая таблица содержит только выражение XNOR из первого:

`Second Table` 
F(Table2) = w'xyz + wxy'z + w'x'y'z + wx'yz 
          w 
     \ wz   ___________ 
    xy \-----------------------+  negation of table 2 is table 1 and vise versa 
     |  | 1 |  |  |  F(Table2) = 1101 F(Table2)'= F(Table1) = 0010 
     +-----+-----+-----+-----+     1011       0100 
     |  |  | 1 |  | |    0001       1110 
     +-----+-----+-----+-----+ | y    0111       1000 
     | |  | 1 |  |  | |     ^--> fake      ^
    x | +-----+-----+-----+-----+   
     | |  |  | 1 |  |   
     +-----------------------+ 
     ^ ___________ ^
     ^  z  ^
     ^    ^
      ^--------z'-------^ 

    the final table is: 
       w 
     \ w 0 __1__ 
    xy \-----------+ 
    00 | 1 |  | 
     +-----+-----+ 
    01 |  | 1 | | 
     +-----+-----+ | y And " F = w'y' + wy " is an Xnor 
    |10 |  | 1 | | 
x | +-----+-----+ 
    |11 | 1 |  | 
     +-----------+ 

Всегда помните таблицы, содержащие зигзагообразный рисунок
- это либо Xor, либо Xno r выражение.

0

Я бы не отклонил переменную z из выражения, потому что, по-моему, выражение ¬z · (¬x · y · ¬w + ¬x · w · ¬y + ¬y · ¬w · x + w · Y · x) не равно (¬x · y · ¬w + ¬x · w · ¬y + ¬y · ¬w · x + w · y · x). Это означало бы, что K-карта содержит четыре двойника, но есть только четыре сингла.

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

K-map of expression including 3-input xor and 3-input xnor

Для первой таблицы:

¬x·¬y·w·¬z + ¬x·y·¬w·¬z + x·y·w·¬z + x·¬y·¬w·¬z 

¬z·((¬x + ¬y + w)·(¬x + y + ¬w)·(x + y + w)·(x + ¬y + ¬w))  //distributivity 

¬z· (¬x + ¬y + w)·(¬x + y + ¬w)·(x + y + w)·(x + ¬y + ¬w)  //relaxed syntax 

¬z· (¬x·¬x + ¬x·y + ¬x·¬w + ¬y·¬x + ¬y·y + ¬y·¬w + w·¬x + w·y + w·¬w)· 
    (x·x + x·¬y + x·¬w + y·x + y·¬y + y·¬w + w·x + w·¬y + w·¬w) //distributivity 

Из законов

  • идемпотентности (например: ¬x · ¬x = ¬x),
  • поглощение (например: ¬x + ¬x · y = ¬x)
  • и дополнительности (например: ¬x · х = 0)

выражение эквивалентно:

¬z· (¬x       + 0 + ¬y·¬w  + w·y + 0)· 
    (x +     + 0 + y·¬w +  + w·¬y + 0 ) 

¬z· (¬x + ¬y·¬w + w·y)·(x + y·¬w + w·¬y)  //just formatted 

¬z· (¬x·x + ¬x·y·¬w + ¬x·w·¬y 
    + ¬y·¬w·x + ¬y·¬w·y·¬w + ¬y·¬w·w·¬y 
    + w·y·x + w·y·y·¬w + w·y·w·¬y)   //distributivity 

¬z· ( 0 + ¬x·y·¬w + ¬x·w·¬y 
    + ¬y·¬w·x +  0  +  0 
    + w·y·x + 0  +  0 )   //using the three laws↑ again 

¬z· (¬x·y·¬w + ¬x·w·¬y + ¬y·¬w·x + w·y·x) //how the 3-input XOR is defined 

¬z· (x xor y xor w) 

Для второй таблицы:

¬x·¬y·¬w·z + ¬x·y·w·z + x·y·¬w·z + x·¬y·w·z 

z·((¬x + ¬y + ¬w)·(¬x + y + w)·(x + y + ¬w)·(x + ¬y + w))  //distributivity 

z· (¬x + ¬y + ¬w)·(¬x + y + w)·(x + y + ¬w)·(x + ¬y + w)   //relaxed syntax 

z· (¬x·¬x + ¬x·y + ¬x·w + ¬y·¬x + ¬y·y + ¬y·w + ¬w·¬x + ¬w·y + ¬w·w)· 
    (x·x + x·¬y + x·w + y·x + y·¬y + y·w + ¬w·x + ¬w·¬y + ¬w·w) //distributivity 

z· ( ¬x +      + 0 + ¬y·w +  + ¬w·y + 0)· 
    (x +     + 0 + y·w +  + ¬w·¬y + 0) 

z· (¬x + ¬y·w + ¬w·y)·(x + y·w + ¬w·¬y)  //just formatted 

z· (¬x·x + ¬x·y·w + ¬x·¬w·¬y 
    + ¬y·w·x + ¬y·w·y·w + ¬y·w·¬w·¬y 
    + ¬w·y·x + ¬w·y·y·w + ¬w·y·¬w·¬y)  //distributivity 

z· ( 0 + ¬x·y·w + ¬x·¬w·¬y 
    + ¬y·w·x +  0 +  0 
    + ¬w·y·x +  0 +  0)   //using the three laws↑ again 

z· (¬x·y·w + ¬x·¬w·¬y + ¬y·w·x + ¬w·y·x) //how the 3-input XNOR is defined 

z· (x xnor y xnor w) 
0

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

(А = 1) (И) (В = 0 при С = 1 и В = 1, когда С = 0) (ИЛИ) (А = 0) (AND) (B = 0, когда C = 0 и B = 1, когда C = 1) , что finaly дает следующее:

(A AND (B XOR C)) ИЛИ (¬A И (B XNOR C))

on paper

 Смежные вопросы

  • Нет связанных вопросов^_^