hi kann mir wer bei der implementierung der fibonaccifolge in assembler helfen :
die folge ist wie folgt definiert :
für n=0 f(n)=0, für n=1 f(n)=1
für n>=2 : f = f(n-1)+f(n+2)
krieg dass einfach nicht gebacken, bin für jeden lösungsvorschlag sehr dankbar
mfg hategrown
Programmieren - alles kontrollieren 4.940 Themen, 20.676 Beiträge
Noch etwas zum overkill.
Division durch 2^n lässt sich als shift-right um n stellen darstellen, wobei das höchste bit bei vorzeichenbehafteter darstellung beim schieben nicht durch 0 sondern sich selbst ersetzt wird, damit das ergebnis nicht falsch wird.
Der rest einer solchen division sind die ersten n bits vor dem shift-right (also genau das, was später raus fliegt).
Da in der aufgabenstellung die darstellung im zweierkomplement erwähnt ist (auch wenn das für die gestellte aufgabe unbedeutend ist), sollte nicht wie von mir verwendet srl (shift right logical), sondern sra (shift right arithmetic, also beibehaltung des höchsten bits oder auch srl der unteren 31 bits und kopieren des 32. bit ins 31. bit) verwendet werden.
Statt
srl $a0, $a0, 1
also
sra $a0, $a0, 1
mr.escape