Domanda

Sono abbastanza sicuro che posso ricordo di aver fatto qualcosa di simile in uno dei miei corsi di livello universitario e che c'era una sorta di formula ad esso, ma la mia mente mi sta venendo a mancare di là di questo.

Data la dichiarazione: (A o B o D) e (A o C)

Sono abbastanza sicuro che questo può essere ridotto a: (A o B o D o c)

Ma non riesco a ricordare come andrei circa dimostrarlo.

Forse è stata una serie di tabelle logiche?

È stato utile?

Soluzione

Non si può ridurre "(A o B o D) e (A o C)" a "(A o B o D o c)" perché il primo non è soddisfatto con la "c = true, a, b, d = false", mentre il secondo è. Così non si può dimostrare la riduzione corretta sia:)

In generale, ci sono molti modi per ridurre le formule booleane in termini di dimensioni, ed è anche una questione di ciò che si desidera ottimizzare (dimensione totale? Numero medio di condizione valutazioni?). mappe di Karnaugh funzionano solo per un piccolo numero di variabili. Ridurre grandi formulaes booleani in quelle più piccole è un argomento avanzato che è la chiave per esempio progettazione di circuiti logici automatica.

Altri suggerimenti

mappe di Karnaugh ? riduzione espressione logica?

Una mappa di Karnaugh è tuo amico qui:

http://en.wikipedia.org/wiki/Karnaugh_map

Avrete tipo di deve costruire in senso inverso dalle equazioni di cui sopra, ma è un buon strumento per dirvi se può essere ridotto ulteriormente.

mappe di Karnaugh, la chiave è quello di "disegnare" tutti gli ingressi possibili ed indicare loro uscite. Poi si può iniziare a filtrare gli ingressi che non fanno la differenza per l'uscita riducendo così la mappa. Una volta che è ottimizzato si può quindi produrre la logica da esso.

(A o B o D), E (A o C)

Questo significa quando un è vero, è tutto vero!

=> una o {(B o D) e (C)}

=> a OR (B e C) OR (d e C)

Penso che il risultato (A o B o D o C) è sbagliato, ma mi dia una mano quando il suo male.

una o {(B o D) e C}

Ragionamento: Se "a", quindi l'affermazione è vera. altra cosa, è necessario B o D (per soddisfare la prima parte della dichiarazione) e C (soddisfa la seconda metà nei casi in cui! a

Karnaugh Maps :

Questo è un B o D OR:

 \ab
cd\ 00 01 11 10
---+-----------+
00 |  | X| X| X|
01 | X| X| X| X|
11 | X| X| X| X|
10 |  | X| X| X|
   +-----------+

Si tratta di una o C:

 \ab
cd\ 00 01 11 10
---+-----------+
00 |  |  | X| X|
01 |  |  | X| X|
11 | X| X| X| X|
10 | X| X| X| X|
   +-----------+

loro intersezione, otteniamo:

 \ab
cd\ 00 01 11 10
---+-----------+
00 |  |  | X| X|
01 |  |  | X| X|
11 | X| X| X| X|
10 |  | X| X| X|
   +-----------+

Ovviamente, questo è un OR (qualcosa), dove il (qualcosa) è:

    00 01
11 | X| X|
10 |  | X|

Dato che il (qualcosa) non è un rettangolo, richiede due espressioni, che potrebbe essere sia in AND o in OR insieme, a seconda di come vogliamo affrontarlo. Useremo O in questo esempio, poiché dà un'espressione più semplice.

In questo caso, siamo in grado di raggruppare i due X di uno accanto all'altro con altri due per riempire l'intera linea di cd, in modo da CD può essere una delle espressioni. Possiamo anche gruppo due uno sopra l'altro con i due di loro diritto a formare un quadrato. Questo quadrato rappresenta l'espressione bc, poiché entrambi A e D variano all'interno del quadrato.

Quindi, l'espressione finale è un OR ((C e D) o (B e D)) o a + cd + bd . Molto più bello, non è vero?

SOP forma minima:

y = a | b&c | c&d;

POS hanno lo stesso costo (numero di porte di implementare diagramma logico):

y = (a|c)&(a|b|d);

Sì, è possibile provarlo. Non si può ridurlo a (B o D o c)

Guardate la terza riga sotto. La vostra riduzione non riuscirebbe a generare la risposta corretta.

Basta eseguirlo tramite:

A B C D
0 0 0 0 0 =
0 0 0 1 0 =
0 0 1 0 = 0
.
.
.
1 0 0 0 = 1
1 0 0 1 = 1

Finora ho (A o (???)): (

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top