15.8 Entwicklung eines Addiernetzes
Als Beispiel für einen Teil der ALU entwickeln wir ein Addiernetz. Wir lösen die Aufgabe zunächst allgemein für p-adische Zahlsysteme und spezialisieren die Lösung später für das Binärsystem.
Spezifikation: Es sei zs die Verzahnung der beiden Summanden, d.h. es gelte digits p (2*k) zs
add p k zs =
code p (k+1) (deco p k (evns zs) + deco p k (odds zs))
Die Ergebnislänge k+1 berücksichtigt einen eventuellen Überlauf.
Ziel: Rekursive Version ohne deco und code .