<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Addierwerk</id>
	<title>Addierwerk - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Addierwerk"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Addierwerk&amp;action=history"/>
	<updated>2026-05-27T00:46:09Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Addierwerk&amp;diff=125419&amp;oldid=prev</id>
		<title>80.187.73.84: Ergibt so sinn (für mich)</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Addierwerk&amp;diff=125419&amp;oldid=prev"/>
		<updated>2025-05-14T08:45:10Z</updated>

		<summary type="html">&lt;p&gt;Ergibt so sinn (für mich)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Datei:Addierwerk.svg|mini|Das Addiernetz bildet aus den Summanden a&amp;lt;sub&amp;gt;3..0&amp;lt;/sub&amp;gt; und b&amp;lt;sub&amp;gt;3..0&amp;lt;/sub&amp;gt; die Summe s&amp;lt;sub&amp;gt;3..0&amp;lt;/sub&amp;gt;, carry_in und carry_out ermöglichen die Kaskadierung des [[Schaltnetz]]es]] &lt;br /&gt;
Das &amp;#039;&amp;#039;&amp;#039;Addierwerk&amp;#039;&amp;#039;&amp;#039; (auch &amp;#039;&amp;#039;&amp;#039;Addiernetz&amp;#039;&amp;#039;&amp;#039;) ist die Hauptkomponente des [[Arithmetisch-logische Einheit|Rechenwerks]] einer [[Hauptprozessor|CPU]].&lt;br /&gt;
&lt;br /&gt;
Das Addierwerk ermöglicht die Addition zweier mehrstelliger [[Binärzahl]]en. Da sich alle vier [[Grundrechenarten]] auf die [[Addition]] zurückführen lassen, bildet es das zentrale [[Elektrisches Bauelement|Element]] des Rechenwerks (Arithmetisch-logische Einheit, ALU) eines Prozessors. Während das Addiernetz asynchron funktioniert, arbeitet das Addierwerk getaktet und [[Puffer (Informatik)|puffert]] das Ergebnis mit Speicherbausteinen.&lt;br /&gt;
&lt;br /&gt;
Ein Addierwerk kann auf verschiedene Arten realisiert sein. Die bekanntesten Schaltungen sind das Paralleladdierwerk, das Serienaddierwerk und das [[John von Neumann|Von-Neumann]]-Addierwerk. Alle drei verwenden [[Halbaddierer|Halb-]] und/oder [[Volladdierer]] zur Durchführung der Addition.&lt;br /&gt;
&lt;br /&gt;
== Schaltungstypen ==&lt;br /&gt;
=== Paralleladdierwerk ===&lt;br /&gt;
[[Datei:Ripple-carry-adder.svg|mini|250px|Aufbau eines 4-Bit-Carry-Ripple-Addierers]]&lt;br /&gt;
&lt;br /&gt;
In der Grundform wird der [[Carry-Ripple-Addierer]] als Addiernetz verwendet, wobei das Carry-Out mit dem Carry-In des nächsten Volladdierers verbunden wird. Zur Bildung der Summe muss im [[Worst Case]] das Signal des Carry-Bits vom niederstwertigen Addierer bis zum höchstwertigen Addierer wandern. Daraus folgt bei großen Rechenwerken eine erhebliche Laufzeit im Addiernetz, in der Folge wurden Schaltnetze mit reduzierter [[Laufzeit (Informatik)|Laufzeit]] entwickelt.&lt;br /&gt;
*[[Paralleladdierer mit Übertragsumleitung]] (&amp;#039;&amp;#039;Carry-Skip-Addierer&amp;#039;&amp;#039;), die Volladdierer werden zu Gruppen zusammengefasst und durch Zusatzlogik wird schnell ermittelt, ob ein Carry-In die Gruppe durchwandert. (Bei allen Addierern liegt mindestens an einem Eingang eine 1, somit haben alle einzelnen Addierer einen Übertrag im Ergebnis.)&lt;br /&gt;
*[[Paralleladdierer mit Übertragsvorausberechnung]] (&amp;#039;&amp;#039;Carry-Look-Ahead-Addierer&amp;#039;&amp;#039;), das Schaltnetz für eine Addierergruppe enthält eine aufwändige Logik, die deren Übertrag direkt ermittelt.&lt;br /&gt;
*[[Conditional-Sum-Addition|Conditional-Sum-Addierer]], berechnet für eine Addierergruppe das Ergebnis sowohl mit als auch ohne Carry-In gesetzt. Eine [[Multiplexer|Auswahl-Logik]] schaltet in Abhängigkeit vom Carry-In das entsprechende Ergebnis zu den Ausgängen.&lt;br /&gt;
&lt;br /&gt;
Der Vorteil des Paralleladdierers liegt in der gleichzeitigen Arbeit aller beteiligten Addierer. Der Nachteil der Grundform sind die langen Signal-Laufzeiten, da sich der Übertrag im Extremfall von rechts nach links durch die Schaltung propagieren muss.&lt;br /&gt;
Die Weiterentwicklungen benötigen eine große Zahl zusätzlicher Gatter, deren Zahl linear mit der Breite &amp;#039;&amp;#039;n&amp;#039;&amp;#039; der zu addierenden Stellen des [[Dualsystem]]s steigt.&lt;br /&gt;
&lt;br /&gt;
=== Serienaddierwerk ===&lt;br /&gt;
[[Datei:Serienaddierwerk.svg|mini|400px|Serienaddierwerk berechnet die Summe Stelle für Stelle]]&lt;br /&gt;
Das Serienaddierwerk benötigt einen [[Volladdierer]] sowie ein [[Flipflop|D-Flip-Flop]] zur Addition zweier &amp;#039;&amp;#039;n&amp;#039;&amp;#039;-stelliger Binärzahlen. In jedem Takt wird das äußerste rechte [[Bit]] der Binärzahlen aus den [[Schieberegister]]n sowie der Wert im D-Flip-Flop in den Volladdierer übertragen. Das Ergebnis wird in einem Register gespeichert und der Übertrag im D-Flip-Flop für den nächsten Takt gespeichert. Der Vorteil des Serienaddierwerks liegt in der geringen Anzahl der benötigten elektronischen Bauteile. Der Nachteil liegt in der seriellen Abarbeitung, so dass &amp;#039;&amp;#039;n + 1&amp;#039;&amp;#039; Takte zur Addition zweier &amp;#039;&amp;#039;n&amp;#039;&amp;#039;-stelliger Binärzahlen nötig sind.&lt;br /&gt;
&lt;br /&gt;
Die Kombination der Vorteile des Parallel- und Serienaddierers führt zum Von-Neumann-Addierwerk.&lt;br /&gt;
&lt;br /&gt;
=== Von-Neumann-Addierwerk ===&lt;br /&gt;
[[Datei:Von-neumann-addierwerk 2.svg|mini|400px|4-Bit-Von-Neumann-Addierwerk]] Das Von-Neumann-Addierwerk benötigt &amp;#039;&amp;#039;n&amp;#039;&amp;#039; [[Halbaddierer]] zur Addition zweier &amp;#039;&amp;#039;n&amp;#039;&amp;#039;-stelliger Binärzahlen. Die Addition erfolgt durch folgenden [[Algorithmus]]&lt;br /&gt;
Wiederhole&lt;br /&gt;
# Register A und P mit Summanden laden&lt;br /&gt;
# Addieren&lt;br /&gt;
# Register A mit Summen ohne Übertrag laden, in P Überträge laden&lt;br /&gt;
# Aktion 2 und 3 so lange wiederholen, bis Register S den Wert Null enthält&lt;br /&gt;
&lt;br /&gt;
Das AND an P&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; sorgt dafür, dass nach dem ersten Addierdurchlauf P&amp;lt;sub&amp;gt;0&amp;lt;/sub&amp;gt; von da an mit 0 gesetzt wird.&lt;br /&gt;
&lt;br /&gt;
Das Addierwerk benötigt im ungünstigsten Fall (worst-case) &amp;#039;&amp;#039;n+1&amp;#039;&amp;#039; Takte; die Erfahrung der Praxis zeigt, dass es im [[Mittelwert|Mittel]] nur &amp;lt;math&amp;gt; \log_{2}n + 1 &amp;lt;/math&amp;gt; sind.&lt;br /&gt;
&lt;br /&gt;
Beispiel 13 + 11:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe6&amp;quot;&lt;br /&gt;
! Schritt&lt;br /&gt;
! S&lt;br /&gt;
! U&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| P&amp;lt;sub&amp;gt;3…0&amp;lt;/sub&amp;gt;&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| A&amp;lt;sub&amp;gt;3…0&amp;lt;/sub&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| || 0 || 0 || 0000&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 0 || 0000&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 1 || 0 || 1101&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 13 || 1011&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 11&lt;br /&gt;
|-&lt;br /&gt;
| 2 || 1 || 1 || 0010&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 2 || 0110&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 22&lt;br /&gt;
|-&lt;br /&gt;
| 3 || 1 || 1 || 0100&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 4 || 0100&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 20&lt;br /&gt;
|-&lt;br /&gt;
| 4 || 1 || 1 || 1000&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 8 || 0000&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 16&lt;br /&gt;
|-&lt;br /&gt;
| 5 || 0 || 1 || 0000&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 0 || 1000&amp;lt;sub&amp;gt;b&amp;lt;/sub&amp;gt; || 24&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Subtrahieren ===&lt;br /&gt;
[[Datei:Zweierkomplement.svg|mini|Das XOR macht je nach Zustand des Selektors das Einerkomplement oder lässt das Signal unverändert durch]]&lt;br /&gt;
Die [[Subtraktion]] ist mit der Addition eng verwandt und lässt sich durch Vorzeichenwechsel des Subtrahenden in eine Addition umwandeln. Ein Vorzeichenwechsel bei Dualzahlen ermöglicht das [[Zweierkomplement]], umgesetzt als [[Einerkomplement]] (invertieren aller Bits) und danach mit 1 addiert (setzen von carry in). Die Erweiterung des Addierwerks zum Addier-/Subtrahierwerk ermöglicht die Vorschaltung von [[XOR-Verknüpfung]]en am Eingang des zweiten [[Operator (Mathematik)#Operand|Operand]]en. Steht der Wahlschalter auf 1 invertiert das XOR das Eingangssignal  und setzt das Carry-In-Bit, hierdurch entsteht das Zweierkomplement und aus der Addition wird eine Subtraktion.&lt;br /&gt;
{{Absatz}}&lt;br /&gt;
&lt;br /&gt;
== Addition und Subtraktion von Gleitkommazahlen ==&lt;br /&gt;
Viele Prozessoren verfügen über eine [[Gleitkommaeinheit]] für Berechnungen mit Kommazahlen. Bei [[Gleitkommazahl]]en werden [[Mantisse]] und [[Potenz (Mathematik)|Exponent]] getrennt verarbeitet. Dazu werden die Exponenten der Zahlen in einem Normierer angeglichen, die Zahlen mit Hilfe eines Addierer/Subtrahierer addiert/subtrahiert und schließlich wird das Ergebnis und der neue Exponent in einem Normierer zu einer neuen Gleitkommazahl&amp;amp;nbsp;– dem Ergebnis&amp;amp;nbsp;– verarbeitet. &lt;br /&gt;
&lt;br /&gt;
=== Normierer, 1. Teil ===&lt;br /&gt;
Zuerst muss der Exponent angeglichen werden. Dazu werden die beiden Exponenten subtrahiert und die Mantisse der Gleitkommazahl mit dem kleineren Exponenten mit einem Schieberegister um die durch die Subtraktion der Exponenten ermittelte Anzahl an Stellen (Bits) verschoben. Dadurch besitzen beide Zahlen denselben (größeren) Exponenten. Der größere Exponent wird über einen Multiplexer anhand des [[Vorzeichen (Zahl)|Vorzeichens]] des bei der Subtraktion entstandenen Wertes (Exponenten-Differenz) ausgewählt und direkt an den Normierer weitergeleitet. &lt;br /&gt;
&lt;br /&gt;
=== Addierer/Subtrahierer ===&lt;br /&gt;
In der Addierer/Subtrahierer-Stufe arbeitet im Wesentlichen ein Addierer mit vorgeschalteten Invertern an den Eingängen. Die Inverter invertieren (negieren) die Mantisse, wenn das zugehörige [[Vorzeichenbit]] der jeweiligen Gleitkommazahl gesetzt ist. Anschließend können die beiden Zahlen addiert werden. Hierbei entsteht die neue Mantisse. Zudem wird das Prioritäts-Bit (Überlauf-Bit) des Addierers gesetzt, wenn die Summe der beiden Mantissen zu groß ist um in der neuen Mantisse gespeichert werden zu können. &lt;br /&gt;
&lt;br /&gt;
=== Normierer, 2. Teil ===&lt;br /&gt;
Im Normierer wird die Exponenten-Differenz um eins reduziert und das Ergebnis aus der Addierer/Subtrahierer-Stufe um eins nach links verschoben, falls das Prioritäts-Bit gesetzt ist. Anschließend wird das Ergebnis aus der Addierer/Subtrahierer-Stufe zur Mantisse&amp;amp;nbsp;– und die Exponenten-Differenz zum Exponenten&amp;amp;nbsp;– der Ergebnis-Gleitkommazahl.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* {{Webarchiv | url=http://the.navigable.info/pub/da03_facharbeit.pdf | wayback=20070927213415 | text=&amp;#039;&amp;#039;Entwicklung einer Schaltung für Addition und Subtraktion binärer Zahlen&amp;#039;&amp;#039;}} -- Facharbeit (PDF-Datei; 952 kB)&lt;br /&gt;
* {{Webarchiv |url=https://www.informatik.hu-berlin.de/~apolze/LV/RA_LiN/Lection_2a/logik.html |wayback=20141220063211 |text=Schaltalgebra, Boolesche Algebra}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Digitale Schaltungstechnik]]&lt;br /&gt;
[[Kategorie:Computerarithmetik]]&lt;/div&gt;</summary>
		<author><name>80.187.73.84</name></author>
	</entry>
</feed>