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

Al registre, check the al-register for palindromic number

check the al-register for palindromic number

Procedures, How to define procedures?

How to define procedures?

The pin diagram of 8088-microprocessor, Pin diagram of 8088 : The pin ...

Pin diagram of 8088 : The pin diagram of 8088 is shown in given figure. Most of the 8088 pins and their functions are exactly similar to the corresponding pins of 8086.  Hence

Inc-arithmetic instruction-microprocessor, INC: Increment : - This instruct...

INC: Increment : - This instruction increments the contents of the particular memory or register location by the value 1. All the condition code flags are affected except the carry

Cobol, #I submitted my assignment this morning and it is still processing. ...

#I submitted my assignment this morning and it is still processing. How long does it take?

Bcsl-022, define accounting.briefly explain the accounting concepts which g...

define accounting.briefly explain the accounting concepts which guide the accountant at the recording stage.

Memory interface-microprocessor, Memory Interface              ...

Memory Interface                                                                  Figure: Memory Modulation design The memory of a computer contain of number of memo

CONSTANTS, Ask question #MinimuWHAT ARE CONSTANTS AND WHAT DO THEY DO?m 100...

Ask question #MinimuWHAT ARE CONSTANTS AND WHAT DO THEY DO?m 100 words accepted#

Dma-how dma works-microprocessor, DMA DMA stands for Direct Memory ...

DMA DMA stands for Direct Memory Access It is uses same Address/Data lines on ISA bus It controls the ISA bus instead of the processor ("bus master") Floppy

Program, move a byte string ,16 bytes long from the offset 0200H to 0300H i...

move a byte string ,16 bytes long from the offset 0200H to 0300H in the segment 7000H..

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