Implement the above fib function in assembly

Assignment Help Assembly Language
Reference no: EM131299254

Assembly Language Lab

Fibonacci numbers are integers 0, 1, 1, 2, 3, 5, 8, 13, 21 ... If function fib(n) represents the nth Fibonacci number, we have fib(n) = fib(n-1) + fib(n-2) for n > 2, and fib(1) = 0, fib(2) = 1. Therefore, we can implement the recursive function fib in c++ as follows:

int fib(int n){
if ((n == 1) || (n == 2))
return n - 1;
else
return fib(n-1) + fib(n-2);
}

In this lab, we will write an assembly program that computes and displays the nth Fibonacci number for any positive integer n that the user entered. To implement this program, we need to

1) Implement the above fib function in assembly, i.e., translate fib into an equivalent assembly procedure;

2) Implement your main procedure which lets the user enter the number n, calls the procedure fib to get the nth Fibonacci number, and displays this Fibonacci number.

Please avoid using directives such as IF-ELSE in your assembly code.

Requirements:

1. Submit your source code (.asm file) which should run correctly.
2. Necessary comments are needed in your code.
3. Turn in a lab report. The lab report should include three parts: Introduction, Implementation, and Summary. The introduction briefly describes the purpose of this lab. The implementation part gives detailed description on how you implemented the task, including the runtime screen shots, as well as necessary discussions. The summary concludes the lab.

Reference no: EM131299254

Questions Cloud

Find the solution by applying suitable numerical methods : Provide a plot comparing f(t) to f~(t). Formulate the problem as an optimization problem with a proper objective function, I(ωo), and find the solution by applying suitable numerical methods. You may use LSE minimization
Prove that the output spectrum of the system exhibits growth : Assuming a third-order nonlinearity for the envelope detector in Figure, prove that the output spectrum of the system exhibits growth in the adjacent channels.
Identify a plan that addresses legal and ethical issues : Identify the principles and legalities of ethical issues within the health care system - Identify a plan that addresses legal and ethical issues in a health care policy.
Possible unemployment in the market : Explain the effect on wages, levels of employment, and possible unemployment in the market most directly affected by this law. Also, what forms of competition among workers might be more prevalent with the higher minimum wage?
Implement the above fib function in assembly : Implement the above fib function in assembly, i.e., translate fib into an equivalent assembly procedure; Implement your main procedure which lets the user enter the number n, calls procedure fib to get the nth Fibonacci number.
Are you surprised that 42% of fatalities occur on those days : What percent of the week do Friday, Saturday, and Sunday make up? Are you surprised that 42% of fatalities occur on those days?
Derive conditional demand for labour and capital : Derive conditional demand for labour and capital. Derive minimized total cost. Derive the equation of firm's expansion path. Draw the expansion path.
How is tylenol''s claim misleading even if true : The makers of Bayer Aspirin, in a reply headlined "Makers of Tylenol, Shame on You!" accused Tylenol of misleading by giving the truth but not the whole truth. You be the detective. How is Tylenol's claim misleading even if true?
Determine the efficiency of the stage : If transistor M2 in Figure has an average current of I0 and an average drainsource voltage of V0, determine the efficiency of the stage. Neglect the on-resistance of M1.

Reviews

Write a Review

Assembly Language Questions & Answers

  Create a assembly language subroutine

Create a assembly language subroutine MULSUM that takes an array named A containing n bytes of positive numbers, and fills two arrays, array B containing n words and array C containing n long words

  Write a function in linux assembly

Write a function in Linux assembly

  Analog measurements

Prepare an assembly program for the correctly measures the wind direction

  Design a simple digital clock

Design a simple digital clock

  Write an assembly program

Prepare an Assembly program that reads in a number of cents.

  Write an assembly language program

Write an assembly language program for encrypting alphabates of a string

  Greatest common divisor of integers-masm assembly language

Must be done in MASM assembly language: Greatest common divisor of two integers is largest integer which will evenly divide both integers. GCD algorithm involves integer division in a loop.

  Write assembly program-find right admission price to movie

Write the Assembly program to find correct admission price to movie. Price of admission to a movie is $7 for kids (under 12) and $9 for adults.

  Create simple 8-bit alu using add-subtract-shift functions

Create a simple 8-bit ALU. Requirements:The eight functions that you will implement are: add, subtract, and, or, shift left logical, less than, shift right logical.

  Write assembly program print binary representation-integers

Write the assembly program called hw6_ex1, stored in file hw6_ex1.asm. This program must prompt user to enter signed 32-bit integer. Program must print out binary representation of the integer.

  Allot op-codes and add microcode to microprogram

Allot op-codes and add microcode to microprogram of Mic-1 to implement following instructions which are then included with IJVM instruction set.

  Write mips assembly program to read two non-negative numbers

Write MIPS assembly program to repeatedly read two non-negative integers and print integer product and quotient without using multiplication and division instructions.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd