Direkt zum Inhalt

Lexikon der Mathematik: von Neumann-Addierer

sequentieller logischer Schaltkreis zur Berechnung der Addition von zwei n-stelligen binären Zahlen α = (αn−1, …, α0) und β = (βn−1, …, β0), der n Schritte benötigt, um das Ergebnis bereitzustellen.

Der Schaltkreis enthält zwei n-Bit Register a und b, in denen anfangs die beiden Operanden α und β abgespeichert sind. Ist \({\alpha}^{(i)}=({\alpha}_{n-1}^{(i)},\mathrm{...},{\alpha}_{0}^{(i)})\) der Inhalt von Register a vor dem i-ten Schritt, und \({\beta}^{(i)}=({\beta}_{n-1}^{(i)},\mathrm{...},{\beta}_{0}^{(i)})\) der Inhalt von Register b vor dem i-ten Schritt, so berechnet der (i+1)-te Schritt

\begin{eqnarray}\begin{array}{l}{\alpha}_{j}^{(i+1)}={\alpha}_{j}^{(i)}\oplus {\beta}_{j}^{(i)}\,\,\,\forall j\in \{0,\mathrm{...},n-1\},\\ {\beta}_{j}^{(i+1)}={\alpha}_{j-1}^{(i)}\wedge {\beta}_{j-1}^{(i)}\,\,\,\forall j\in \{1,\mathrm{...},n-1\},\\ {\beta}_{0}^{(i+1)}=0.\end{array}\end{eqnarray}

Nach dem i-ten Schritt gilt

\begin{eqnarray}\alpha {\rm{\hspace{0.17em}}}+{\rm{\hspace{0.17em}}}\beta {\rm{\hspace{0.17em}}}={\rm{\hspace{0.17em}}}{\alpha}^{(i)}{\rm{\hspace{0.17em}}}+{\rm{\hspace{0.17em}}}{\beta}^{(i)}.\end{eqnarray}

Da in jedem Fall β(n+1) = (0, …, 0) ist, steht nach dem n-ten Schritt die Summe von α und β in Register a.

Schreiben Sie uns!

Wenn Sie inhaltliche Anmerkungen zu diesem Artikel haben, können Sie die Redaktion per E-Mail informieren. Wir lesen Ihre Zuschrift, bitten jedoch um Verständnis, dass wir nicht jede beantworten können.

  • Die Autoren
- Prof. Dr. Guido Walz

Partnerinhalte

Bitte erlauben Sie Javascript, um die volle Funktionalität von Spektrum.de zu erhalten.