Write an 8086 assembly program, Assembly Language

Assignment Help:

Project Description:

Write an 80x86 assembly program that performs the following functions:

  • Reads a set of integers from a file into an array. The data file name is to be read from the command line. You are welcome to use the code examples and macros to do this project.
  • Format of the data file: Assume the file gives the number of data points on the first line. Every line following the first line contains exactly one value. The maximum number of integers in the file will be 1000, so a max of 1001 lines.
  • Add all the integers that you have read and print out the sum on the screen as well as the greatest and the smallest integer in your array.

Your code must be modular. You must use subroutines/functions for opening the file, reading integers, and populating the array, performing calculations, and printing the array. Except for constants, all values/addresses must be pushed/popped onto the stack. It is not recommended implementing your entire program in Main first and then porting to subroutines.
The max grade you can earn not using subroutines correctly is a 60%.

You should use the following C Functions for your project: fopen, fscanf, fclose, printf

Turning in your program

Use the UNIX submit command on the GL system to turn in your project. You must submit the assembly language program as lab2.asm. The class name for submit is cmpe310. The name of the assignment is lab2. Check the submit help on the webpage. Due to any reason if you are going to submit your project late, the project name will be late. You are also required to turn in a hardcopy of the code and a write-up in the class. You must include a lab cover page in the hardcopy.
The submission should include:-

1. lab2.asm

2. common_code.asm (contains any example code or macros)
Your code must be able to run with what you submit.
You must also turn in to class a project report. The report includes:

1. Cover page (see Blackboard)

2. Typed report with a project description and a general flow of the code. Also, define functions, variables, and labels used in the program. Write the report to an audience that does not necessarily understand assembly.

3. Enscripted code
Failure to follow the submit guidelines will result in a points deduction.


Related Discussions:- Write an 8086 assembly program

Second generation microprocessor, IInd Generation Microprocessor : The ...

IInd Generation Microprocessor : The second generation microprocessor by using n MOS technology seemed in the market in 1973.   The Intel  8080, of nMOS  technology

Assignment, Write an assembly program that adds the elements in the odd ind...

Write an assembly program that adds the elements in the odd indices of the following array. Use LOOP. What is the final value in the register?

General data registers-microprocessor, General Data Registers Given fig...

General Data Registers Given figure indicate the register organization of 8086. The registers DX, CX, BX and AX are the general purpose 16-bit registers. AX is behaved as 16-bi

Rol-logical instruction-microprocessor, ROL : Rotate Left without Carry: T...

ROL : Rotate Left without Carry: This instruction rotates the content of the destination operand to the left by the specified count bit-wise excluding the carry. The most signific

Length-assemblers directive-microprocessor, LENGTH : Byte Length of a Labe...

LENGTH : Byte Length of a Label: This directive is not available in MASM. This is used to mention to the length of a data array or a string. MOV CX. LENGTH ARRAY This sta

Procedures, How to define procedures?

How to define procedures?

More Sentence Sense, When Seen in the choir, Terry was the picture of an an...

When Seen in the choir, Terry was the picture of an angelic devil. I have to underline the predicate twice

Shl/sal-logical instruction-microprocessor, SHL/SAL : Shift logical/Arithm...

SHL/SAL : Shift logical/Arithmetic Left: These instructions shift the operand byte or word bit by bit to the left and insert 0 in the newly introduced least significant bits. In c

#title, how i can write a program to divide 2 numbers

how i can write a program to divide 2 numbers

Boolean and comparison instructions, what will be the value of EAX after fo...

what will be the value of EAX after following instructions execute? mov bx, 0FFFFh and bx, 6Bh

Write Your Message!

Captcha
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