Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Technische Informatik (http://www.informatikerboard.de/board/board.php?boardid=7)
--- Komparator 2 Bit (http://www.informatikerboard.de/board/thread.php?threadid=2148)


Geschrieben von eulerscheZahl am 03.03.2015 um 21:29:

 

Es ist nicht falsch, aber du bist wieder da, wo du angefangen hast. Die ODER müssen alle negiert sein, du sollst es ja mit NOR aufbauen.
Ich komme auf: [latex]\overline{\overline{\overline{\overline{a_1}+b_1}+\overline{\overline{a_0} + \overline{a_1}+b_0}+ \overline{\overline{a_0} +b_0+b_1}}}[/latex]



Geschrieben von SSD21 am 03.03.2015 um 21:35:

 

Wie kommst du denn auf dieses Ergebnis ?

Was hast du genau gemacht ?

Ich habe doch in meiner Rechnung 2 mal negiert.



Geschrieben von Karlito am 04.03.2015 um 12:37:

 

Du darfst die große Doppelnegation nicht auflösen, da sonst die Oder in weg fallen. Anstatt dessen musst du jeden Teilterm, der durch Und verbunden ist doppelt negieren und eine der Negationen auflösen, damit aus dem Und ein Oder wird.

Gruß,

Karlito



Geschrieben von SSD21 am 04.03.2015 um 13:22:

 

Kannst du das nicht irgendwie mit Latex darstellen was du meinst ?

Dann kann ich die Gleichung versuchen zu vereinfachen?



Geschrieben von Karlito am 04.03.2015 um 15:38:

 

[latex]<br />
Z & = & a_1\overline{b_1} + a_0a_1\overline{b_0}+a_0\overline{b_0}\,\overline{b_1}<br />
  & \equiv & \overline{\overline{a_1\overline{b_1} + a_0a_1\overline{b_0}+a_0\overline{b_0}\,\overline{b_1}}}<br />
  & \equiv & \overline{\overline{\overline{\overline{a_1\overline{b_1}}} + \overline{\overline{a_0a_1\overline{b_0}}} + \overline{\overline{a_0\overline{b_0}\,\overline{b_1}}}}}<br />
  & \equiv & \overline{\overline{\overline{\overline{a_1} + b_1} + \overline{\overline{a_0} + \overline{a_1} + b_0} + \overline{\overline{a_0} + b_0 + b_1}}}<br />
[/latex]



Geschrieben von Karlito am 04.03.2015 um 16:09:

 

Erklärung:
Ziel ist, dass überall NOR verwendet wird. Also alles etwa diese Form haben:

[latex]<br />
\overline{a + b}<br />
[/latex]

Unsere Formel ist jetzt aber in der Form [latex]t_1 + t_2 + t_3[/latex]. Also Nutzen wir äquivalente Umformungen um daraus eine NOR-Formel zu machen. Dazu negieren wir sie zwei mal:

[latex]t_1 + t_2 + t_3 \equiv \overline{\overline{t_1 + t_2 + t_3}}[/latex]

Dadurch haben wir ein großes NOR, was jedoch nochmals negiert ist. Die Negation können wir so lassen. Es ist eine Kurzform für folgende Äquivalenz und erspart uns eine Menge Schreibarbeit:

[latex] \overline{a} & \equiv & \overline{a+a} <br />
\Rightarrow \overline{\overline{t_1 + t_2 + t_3}} & \equiv & \overline{\overline{t_1 + t_2 + t_3} + \overline{t_1 + t_2 + t_3}} [/latex]

Außerdem ist das als Schaltung leicht zu realisieren, da man einfach den Ausgang eines zu negierenden Signals nimmt und damit die Eingänge eines NOR-Gatters beschaltet.

Bleiben uns noch die Terme [latex]t_1, t_2[/latex] und [latex]t_3[/latex]. Diese haben folgende Form:

[latex]<br />
l_1l_2l_3 \text{ oder } l_1l_2<br />
[/latex]

wobei die [latex] l_i[/latex] Literale sind und somit Atome oder negierte Atome darstellen können. (Atom = atomare Formel = eine Formel, welche keine Junktoren enthält = in der Aussagenlogik eine einzelne aussagenlogische Variable)

Da die Terme mit UND verknüpft sind, entsprichen sie nicht unserer Anforderung, nur NOR zu verwenden. Also müssen wir sie entsprechend äquivalten Umformen. Dazu negieren wir sie zwei mal (hier das Beispiel mit 3 Literalen):

[latex]<br />
l_1l_2l_3 \equiv \overline{\overline{l_1l_2l_3}}<br />
[/latex]

und wenden anschließend De-Morgan an:

[latex]<br />
\overline{\overline{l_1l_2l_3}} \equiv \overline{\overline{l_1} + \overline{l_2} + \overline{l_3}}<br />
[/latex]

Fertzsch!

Gruß,

Karlito



Geschrieben von Javaneu am 04.03.2015 um 18:14:

 

Zitat:
Original von Karlito
[latex]<br />
Z & = & a_1\overline{b_1} + a_0a_1\overline{b_0}+a_0\overline{b_0}\,\overline{b_1}<br />
  & \equiv & \overline{\overline{a_1\overline{b_1} + a_0a_1\overline{b_0}+a_0\overline{b_0}\,\overline{b_1}}}<br />
  & \equiv & \overline{\overline{\overline{\overline{a_1\overline{b_1}}} + \overline{\overline{a_0a_1\overline{b_0}}} + \overline{\overline{a_0\overline{b_0}\,\overline{b_1}}}}}<br />
  & \equiv & \overline{\overline{\overline{\overline{a_1} + b_1} + \overline{\overline{a_0} + \overline{a_1} + b_0} + \overline{\overline{a_0} + b_0 + b_1}}}<br />
[/latex]


Kannst du mir erklären warum man im 3 Schritt fast 4 mal negiert ?

Das verstehe ich immer noch nicht ?



Geschrieben von eulerscheZahl am 04.03.2015 um 18:28:

 

Ziel ist es, ein NOR als Verknüpfung zu erhalten, es steht aber ein AND dort.
[latex]a \cdot b = \overline{\overline{a \cdot b}} = \overline{\overline{a} + \overline{b}}[/latex]
Und schon steht zwischen a und b ein ODER und obendrein wird der gesamte Ausdruck negiert, also ein NOR.


Forensoftware: Burning Board, entwickelt von WoltLab GmbH