OTHERS

Computer Architecture

Objectives This assignment covers the usage of basic arithmetic instructions as used in assignment 1, along with understanding of arrays and how arrays are stored in the main memory. Please make sure that you understand all the ma...

Order #SA-12691CompletedCompleted on Dec 4, 2022
$65.00 USD
Order value
Order a similar assignment

Assignment details

Academic level
Undergraduate level 3-4
Subject
Computer
Length
1 page
Deadline
Not specified
Citation style
APA
Bids received
0

Project description

Objectives 

This assignment covers the usage of basic arithmetic instructions as used in assignment 1, along with 

understanding of arrays and how arrays are stored in the main memory. Please make sure that you 

understand all the material covered until week 16 lectures. This assignment will mainly test your 

understanding of arrays, how to store them and how to access them from assembly language code.   

Prerequisites 

To complete this assignment, you need to understand 1) different memory addressing modes supported 

by the x86 instruction set 2) Using JUMP instructions to implement loop iterations 3) How arrays are 

stored in the memory. You also need to understand to use basic arithmetic instructions, which you 

should have a good grip on after completing assignment #1.  

Problem description 

Reverse Fibonacci sequence  

The Fibonacci sequence is the sequence of numbers 

0,1,1,2,3,5,8,... 

In this sequence, the first two numbers are 0 and 1, and every new number of the sequence can be 

computed by adding two previous numbers in the sequence. The function to compute Fibonacci 

sequence is defined as  

𝑓(𝑛)=𝑓(𝑛−1)+𝑓(𝑛−2), 

𝑤ℎ𝑒𝑟𝑒 𝑓(0)=0,𝑎𝑛𝑑 𝑓(1)=1 

In this task, you will first print a few numbers from the fabonacci sequence and store it in an array. Then 

you will create another array and print the computed fabanocci sequence in reverse. The details of the 

procedure are given in next section.  

Procedure 

Create a new MASM project by following the procedure as described in the tutorial. Go to the main.asm 

file and copy the following code. In the code provided below, the number of elements of the Fibonacci 

sequence to be printed are stored in the variable “fibonacci” and the output result should be stored as 

an array with the array starting at location “fib_sequence” and the reverse of the array “fib_sequence” 

needs to be stored in a separate array called “reverse_fibonacci”. Please note that this must be 

implemented using JUMP instruction to do loop iterations so that the code works for every valid input 

value (hard coding not allowed). To aid your programming, you can define more variables if you like. .386 

.model flat, stdcall 

.stack 4096 

ExitProcess PROTO, dwExitCode: DWORD 

 

.data 

 ; define your variables here 

 fibonacci byte 12 

 fib_sequence byte 0 

 reverse_fibonacci byte 0 

 

.code 

 

main PROC 

 ; write your assembly code here 

 

 INVOKE ExitProcess, 0 

main ENDP 

END main 

 

 

Deliverables 

Please submit a single .asm file implementing the task as described.   

 

 

 

 

 


Requirements

  • 1 page
  • Formatted and referenced in APA
  • Academic level: Undergraduate level 3-4
  • Subject: Computer

Delivered file

This file is available to the student only

For privacy and security, delivered files are not available for public download. The student who placed this order can sign in to access the delivered work from their dashboard.

Writer information

Writer profile avatar
Jason P. ✓ Verified
★ 5.0/5 (0 reviews)
View profile →
100%Success rate
0Completed orders
—Qualification

Need a similar assignment?

Post your assignment and receive offers from verified writers in your subject area.

Post a new assignment Back to latest orders