Arithmetisch logische Einheit in CPU

OP #2017890
Lesenswert?

Hallo zusammen,

es gibt ja eine Arithmetisch logische Einheit (ALU) in der CPU.

Wenn man diese bspw. mit UND- und XOR-Gattern aufbaut bekommt man ja 
einen Addierer bzw. Subtrahierer hin.

Wie sieht es aber aus, wenn man anstatt UND-Gatter ODER-gatter 
verwendet. Ist das dann immer noch ein Addierer bzw. Subtrahierer oder 
hat das Teil dann andere Funktionen?

Denn ich finde nirgends ein Beispiel mit Oder Gattern.
Gast #2017897
Lesenswert?

wenn du es 1 zu 1 mit den anderen gattern aufbaust, dann wird die 
funktion wohl anders sein.

man muss aber auch wissen, das in der praxis kein subtrahierwerk 
vorhanden ist. die subtraktion wird auf eine addition mit einer 
negativen zahl zurückgeführt.
Gast #2017901
Lesenswert?

Hans Müller schrieb:
> es gibt ja eine Arithmetisch logische Einheit (ALU) in der CPU.
ja.
> Wenn man diese bspw. mit UND- und XOR-Gattern aufbaut bekommt man ja
> einen Addierer bzw. Subtrahierer hin.

Du meinst so:
Summe = a exor b
Übertrag = a und b

allerdings fehlen hier sowieso die Überträge von den niedrigeren 
Stellen.

> Wie sieht es aber aus, wenn man anstatt UND-Gatter ODER-gatter
> verwendet. Ist das dann immer noch ein Addierer bzw. Subtrahierer oder
> hat das Teil dann andere Funktionen?

Es ändert sich ja die Gleichung, also wird was anderes sein.

> Denn ich finde nirgends ein Beispiel mit Oder Gattern.

Naja wenn man EXOR hat, nimmt kein Mensch beim Addierer das normale OR, 
weil der Fall a=1 und b=1 dann wieder mühsam weggemacht werden muss.
:-)
Gast #2017910
Lesenswert?

Hallo,

so wie ich die Frage verstanden habe ist die Fragestellung ziemlich 
sinnlos. Willst Du wirklich wissen was passiert, wenn Du beispielsweise 
alle AND-Gatter mit OR-Gattern austauschst? Das ist so ähnlich als ob Du 
fragst, was passiert, wenn Du bei einem Auto alle Schrauben durch Nägel 
austauschst. Von weit weg sieht es noch wie ein Auto aus, aber sobald Du 
dem Ex-Gefährt näherkommst, fällt der Blechhaufen in sich zusammen...

Murkser
#2017912
Lesenswert?

Hans Müller schrieb:

> Wie sieht es aber aus, wenn man anstatt UND-Gatter ODER-gatter
> verwendet.

Der Computer der Apollo-Kapsel und der Mondladefähre aus den 60ern wurde 
mit einem einzigen Gatter/IC-Typ aufgebaut. Das war ein NOR-Gatter mit 3 
Eingängen.

Allerdings geht das nicht mit jedem Gattertyp. Mit NAND geht das, mit 
NOR geht das, mit Open-Collector-Invertern geht das. Aber 
ausschliesslich mit AND-Gattern geht das nicht, ebensowenig mit OR oder 
XOR Gattern.

Warum das so ist, das erklärt dir Augustus De Morgan.
#2017933
Lesenswert?

Hans Müller schrieb:

> Mal angenommen ich habe so eine ALU http://analyseandbet.de/alu.png

Die dort gezeigten Gatter haben allerdings mit der Grundfunktion nur 
bedingt zu tun. Sie helfen dabei, den Addierer auch als Subtrahierer 
verwenden zu können und sie ermöglichen es, jeden Operanden als 0 
ansehen zu können egal was anliegt.

Der interessantere Teil steckt in den grossen Kasten.

> das wäre ja ein Addierer-Subtrahierer. Wenn ich jetzt das UND in ein
> ODER Gatter tausche, ist es natürlich kein Addierer-Subtrahierer mehr.

Doch. Das ist in diesem Fall eine ALU, bei der du die Operanden auf 1 
zwingen kansst, statt auf 0.
#2017934
Lesenswert?

Hans Müller schrieb:
> Wie sieht es aber aus, wenn man anstatt UND-Gatter ODER-gatter
> verwendet. Ist das dann immer noch ein Addierer bzw. Subtrahierer oder
> hat das Teil dann andere Funktionen?

Tipp: Lies dich ein wenig in Digitallogik/-technik ein. Ist ein ganz 
interessantes Gebiet! Stichworte: Boolesche Logik, De-Morgan-Theorem, 
Min-/Maxterme, kanonische Normalform, Karnaugh-Diagramme. Später Latches 
und Flipflops sowie synchrone Taktung, danach auch Automaten (Mealy, 
Moore, Medwedew).
#2017950
Lesenswert?

Hans Müller schrieb:

> Denn ich finde nirgends ein Beispiel mit Oder Gattern.

Schmeiss deinen gezeigten dich nur irreführenden 4fach Addierer weg (*) 
und denk einzelbitweise. Ein Addierer sieht dann Bit für Bit so aus: 
http://de.wikipedia.org/wiki/Volladdierer

Und nun ersetze die ungewünschten Gattertypen entsprechend De Morgan 
durch gewünschte.

*: Nochmal im Klartext: Beide Gattertypen deines Bildes haben mit der 
Addition rein garnichts zu tun. Dir XORs darin dienen nur dazu, die 
Subtraktion über Addition des Einerkomplements zu implementieren.
#2017956
Lesenswert?

Die Frage ist ungefähr genauso sinnvoll wie:
Wenn ich beim Pythagoras

    c^2 = a^2 + b^2

das Quadrat gegen eine 3. Wurzel austausche und anstelle von Addieren 
Dividiere, ist das dann immer noch ein Pythagoras?

Natürlich nicht!
Das ist dann irgendeine andere Formel, die in manchen Fällen vielleicht 
sogar vorkommen kann, aber mehr auch nicht.

Allerdings.
Um einen pythagoras zu machen, benötigt man nicht unbedingt eine 
Potenzfunktion. Man kann sie so ersetzen

   c = sqrt( a * a + b * b )

d.h. man die Potenzierung durch eine funktional gleichwertige andere 
Operation ersetzt. Und genau hier sind wir dann beim bereits 
angesprochenen De Morgan. Der sagt dir wie du boolsche Operationen durch 
andere boolsche Operationen ersetzen kannst, so dass sich an der 
Gesamt-Funktionalität selber nichts ändert.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren