Question: Write a program in MIPS assembly language. Suppose we have a program f that inputs a 32-bit words x and n, has 32-bit integer internal

Write a program in MIPS assembly language. Suppose we have a program f that inputs a 32-bit words x and n, has 32-bit integer internal variables j and k, and outputs a 32-bit word z. The program f calls itself N times (i.e., winds up the stack), then unwinds the stack by reversing the recursion (like the factorial example in the viewgraphs) until a final result is reached. a.)You must first (i) draw a picture of what each procedure-calls stack frame will look like and (ii) label the variables, then (iii) compute the size of the stack when all the N procedure calls are executed just before the recursion begins to unwind. This is easy, if you think: N procedure calls produces how many stack frames? b.)Suppose that the procedure f multiplies its input x by the factor n (not to be confused with N the number of procedure calls) and that is the output of f. Write MIPS code for (iv) the procedure calling mechanism (including stack frame handling) and (v) the called procedure (if different from the one in (iv).

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!