effizienter Multiplikationsalgorithmus

Neue Frage »

Auf diesen Beitrag antworten »
deppensido effizienter Multiplikationsalgorithmus

Hallo,

die Aufgabe ist es in Assembler einen Multiplikationsalgorithmus zu schreiben, der maximal 16 Additionen und logische Operationen benötigt. Mit welchem Algorithmus bekommt man das mit den wenigen Additionen hin? Ich hab bislang nur rekursive Algorithmen gefunden, möchte es aber lieber iterativ lösen.

Grüße
 
Auf diesen Beitrag antworten »
eulerscheZahl

Assemblercode wirst du von mir nicht zu sehen bekommen, ich bin froh, dass ich das nicht mehr machen muss (Außerdem weiß ich nicht, für welchen Prozessor).

Mein Vorschlag (Pseudocode) wäre:
code:
1:
2:
3:
4:
5:
6:
7:
produkt = 0;
for Bit from erstesBitVonZahl1 to letztesBitVonZahl1 do
    produkt <<= 1; //bisheriges Ergebnis um 1 nach links shiften
    if(Bit == 1)
        produkt += zahl2;
Auf diesen Beitrag antworten »
ed209

Schreib doch mal die rekursiven Algorithmen hier auf.
Viele rekursive Algorithmen lassen sich einfach in iterative Algorithmen umwandeln.
Besonders wenn der rekursive aufruf am Ende der Funktion steht.
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »