I'm using M68000 chips so pseudocode is fine. I can easily write this program but I am having trouble implementing the use of stack (push, call, pop) to this algorithm, I been here for hours and still couldn't find a way. Please someone provide a detailed pseudocode for Fibonacci.
Asked
Active
Viewed 2,441 times
0
-
_"I am having trouble implementing the use of stack to this algorithm"_ What specifically is the problem? What does your current code look like? – Michael Dec 10 '13 at 10:18
-
Can you show your attempt? – lurker Dec 10 '13 at 14:24
-
I'm working on your question. In the meantime, I would suggest you to try to implement an iterative version of Fibonacci's series: it could be easier to implement and it could save you from ... ... ... Stack Overflow(s). Lol. – znpy Jan 04 '14 at 00:42
1 Answers
0
Here is an implementation in C. Should be straightforward to translate to ASM.
#include<stdio.h>
int main()
{
int n, first = 0, second = 1, next, c;
printf("Enter the number of terms\n");
scanf("%d",&n);
printf("First %d terms of Fibonacci series are :-\n",n);
for ( c = 0 ; c < n ; c++ )
{
if ( c <= 1 )
next = c;
else
{
next = first + second;
first = second;
second = next;
}
printf("%d\n",next);
}
return 0;
}
The M68000
has enough registers to do this without push
but if you have to use this instruction for a homework assignment, then you could make use of it in the else
clause where the variables are exchanged, thus limiting yourself to using a minimum of registers. Same could be said for the loop.

Devolus
- 21,661
- 13
- 66
- 113