Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Informatik in der Schule (http://www.informatikerboard.de/board/board.php?boardid=21)
--- Halb - und Volladdierer (http://www.informatikerboard.de/board/thread.php?threadid=2038)


Geschrieben von 123michi19 am 31.12.2014 um 15:26:

  Halb - und Volladdierer

Meine Frage:
Hi zusammen,

befasse mich gerade mit dem Thema Halb - und Volladdierer.

Die erste Frage wäre: Worin liegt der Unterschied zur normalen Addition von Binärzahlen?

2. Der Halbaddierer, wenn ich es richtig verstanden habe, hat Zahl1 und Zahl2 sowie einen Übertrag und ein Ergebnisbit. Das kriege ich noch hin.

Aber was hat es bei dem Volladdierer mit dem Carry in auf sich?

Meine Ideen:
Vielen Dank :-)



Geschrieben von eulerscheZahl am 31.12.2014 um 15:38:

 

Der Halb- bzw. Volladdierer kann erstmal nur ein Bit addieren. Um auch mit größeren Zahlen klarzukommen, muss man daher mehrere hintereinanderschalten. Das carry ist der Übertrag des letzten Addierers, der auch noch addiert werden muss.



Geschrieben von 123michi19 am 31.12.2014 um 15:47:

 

Könnten wir vielleicht für den Volladdierer ein Beispiel zusammen machen?



Geschrieben von eulerscheZahl am 31.12.2014 um 15:56:

 

Klar. Willst du anfangen?



Geschrieben von 123michi19 am 31.12.2014 um 16:06:

 

Sehe ich das richtig, dass das carry jetzt erst einmal gewählt werden muss?



Geschrieben von eulerscheZahl am 31.12.2014 um 16:07:

 

Ja, es ist Teil des Eingangs. Du musst es sowohl für c=0 als auch für c=1 durchspielen.



Geschrieben von 123michi19 am 31.12.2014 um 16:11:

 

Das ist mir jetzt richtig peinlich, aber ich muss jetzt zur Verwandtschaft böse

Wäre aber in ca. zwei Stunden wieder da, wenn das für dich in Ordnung wäre?



Geschrieben von eulerscheZahl am 31.12.2014 um 16:14:

 

Mal schauen, wie ich heute Zeit habe. Bei mir kommt auch Verwandschaft, aber bei zwei kreischenden Kindern schaue ich immer, wie ich mich absetzen kann.



Geschrieben von Karlito am 31.12.2014 um 16:15:

 

Prost <- hilft Augenzwinkern



Geschrieben von 123michi19 am 31.12.2014 um 17:48:

 

Ohje, da bin ich doch ein guter Grund um mal eine Weile zu verschwinden :-)

Alternativvorschlag von Karlito hilft natürlich auch immer :-)


Habe mich auch noch mal im Netz zu dem Thema umgesehen und mich an einem konkreten Beispiel versucht (siehe Bild im Anhang). Nur an den Ebit und Carry out (was ja da Übertragungsbit sein müsste, bin ich mir nicht sicher)



Geschrieben von eulerscheZahl am 31.12.2014 um 17:58:

 

Ich trinke nicht.

Da es sich um einen Addierer handelt, ist das Iinteressante die Summe der 3 Eingänge, binär dargestellt.
code:
1:
2:
3:
4:
5:
Summe  c_out y
0 = 00     0 0
1 = 01     0 1
2 = 10     1 0
3 = 11     1 1

Das Ergebnis ist nur ein Bit, daher ist es summe modulo 2.
Das Überlaufbit ist dann gesetzt, wenn die Summe zu groß für ein Bit wird, also ab 2.



Geschrieben von 123michi19 am 31.12.2014 um 18:15:

 

Sorry, ich komme nicht ganz mit. Das Carry out ist der Überlauf (sprich 1+1 = 0 mit Überlauf 1 und die 0 wird in die Tabelle Ergebnisbit geschrieben) ?

Wo kommt denn das Carry in eigentlich her?



Geschrieben von eulerscheZahl am 31.12.2014 um 18:17:

 

So weit richtig.
Wie gesagt: es werden mehrere Addierer hintereinander geschaltet, da man sonst du 2 1-bit Zahlen addieren könnte. Das carry_in ist der Übertrag des vorangegangenen Addierers, also dessen carry_out.



Geschrieben von 123michi19 am 31.12.2014 um 18:26:

 

Ich glaube es verstanden zu haben. Wenn in der ersten Zeile das Carry out 0 ist, dann ist in der nächsten Zeile das Carry in auch 0 ?

Dann würde sich nur noch die Frage stellen, wie ich die erste Ziffer beim Carry in bekomme?



Geschrieben von eulerscheZahl am 31.12.2014 um 18:38:

 

Ich bin mir nicht sicher, ob du es verstanden hast. Daher nochmal: das carry_out des einen ist das carry_in des anderen. Das carry_in des LSB ist eine 0.

Ich habe dir ein Bild gemacht.
Kennt jemand ein gutes Bildbearbeitungsprogramm, das
  1. unter Linux läuft
  2. einfach zu bedienen ist
  3. Basisfunktionen bietet (Zeichnen, Linien ziehen, Text einfügen)
?
Unter Windows finde ich Paint für solche Zwecke ideal. Mit gimp brache ich leider zu lange für einfache Zeichnungen, die meisten Funktionen nutze ich eh nie. Habe das eben mit MyPaint gemacht, damit bin ich aber auch nicht 100% glücklich.

edit: jetzt ist mir auch noch unbeabsichtigt Transparenz ist Bild gekommen.


Forensoftware: Burning Board, entwickelt von WoltLab GmbH