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

Flowchart, ALP to preform of two 16-bit numbers in register addressing mode...

ALP to preform of two 16-bit numbers in register addressing mode

Relocate program and data, ) What is the difference between re-locatable pr...

) What is the difference between re-locatable program and re-locatable data?

Program, Write an application that does the following: (1) fill an array wi...

Write an application that does the following: (1) fill an array with 50 random integers; (2) loop through the array, displaying each value, and count the number of negative values;

Memory segmentation-microprocessor, Memory Segmentation : The  memory ...

Memory Segmentation : The  memory in an 8086/8088  based system is organized as segmented memory. In this scheme, the whole physically available memory can be divided into a n

Mmm development board, Write an account of your findings and produce a repo...

Write an account of your findings and produce a report containing all aspects of the above. Include a step-by-step 'simple User Guide' so that your program can be operated as inten

Dma hardware (8237 dmac)-microprocessor, DMA Hardware (8237 DMAC) : ...

DMA Hardware (8237 DMAC) :   1)Processor contain HOLD/HOLD Acknowledge lines to interact with 8237 o   DMAC can achieve control of ISA bus by asserting HOLD o   P

Matrices, code to add two matrices

code to add two matrices

Risc characteristics-microprocessor, RISC Characteristics : The  concep...

RISC Characteristics : The  concept  of  RISC  architecture  include  an  attempt  to  reduce  execution  time  by make  simple  the instruction set of the computer. The main c

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

Programming with an assembler-microprocessor, Programming with an assembler...

Programming with an assembler The procedure of hand-coding 8086 programs is somewhat tiresome; hence generally a programmer may find it hard to get a correct listing of the mac

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