NASM assembly language programming, Assembly Language

Assignment Help:
NASM assembly language program:

Consider a sequence of 19 strictly positive decimal digits, most likely
stored in an array. There are obviously duplicates, and the sequence is
unsorted. You may use the sequence length in your program.

Your job is to compute and print the _median_ of this sequence. Since the
sequence length is odd, the median occupies the central position when the
sequence is sorted.

Sorting the sequence might be challenging as your first assembly-language
program, but there is an easier way. All you need to master is looping,
array indexing, adding 1, and comparing.

Give yourself an auxiliary array ''count'' that records the number of times
each digit appears in the sequence.

A linear scan through the sequence is sufficient to compute ''count''.
A second linear scan through ''count'' is sufficient to compute the median.

This program is to be written in NASM.

Here is an outline of the NASM source text:

segment .data
seq dd 0, 1, 9, 1, 9, 1, 9, 3, 8, 3,
3, 8, 4, 7, 5, 7, 5, 6, 5, 4 ; array of length 20
count dd 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ; array of length 10

segment .text
...

Related Discussions:- NASM assembly language programming

Scas-string manipulation instruction-microprocessor, SCAS : Scan String By...

SCAS : Scan String Byte or String Word:- This instruction scans a string of words or byte for an operand word or byte specified in the register AL or  register AX. The string i

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..

Login system, a pseudo-code to add username and password combination up to ...

a pseudo-code to add username and password combination up to a limit of 10

Assembly Language Program, which uses BIOS interrupt INT 21 to read current...

which uses BIOS interrupt INT 21 to read current system time and displays it on the top-left corner of screen.

Hand shaking-microprocessor, Hand shaking : Handshaking, or 2-way hand...

Hand shaking : Handshaking, or 2-way handshaking, is 1 type of strobe operation. It typically involves 2 handshaking lines: an output line to denote when the board is ready an

Write an assembly program to simulate a microwave, 1. The microwave has a c...

1. The microwave has a clock (hh:mm:ss am/pm) and the user should be able to change the clock at any time. 2. For cooking the user should first enter the time. The user can ente

Imul-arithmetic instruction-microprocessor, IMUL: Signed Multiplication: T...

IMUL: Signed Multiplication: This instruction multiplies a signed byte by a signed bit in source operand e in the register AL or signed word in source operand by signed word in th

Instruction set of 8086-microprocessor, Instruction set of 8086 : The 8...

Instruction set of 8086 : The 8086/8088 instructions are categorized into the following major types. This section describes the function of each of the instructions with approp

Matlab?., Hello, I just want to know how much would it cost for you to deve...

Hello, I just want to know how much would it cost for you to develop , debug and test a program in matlab to solve a system of equations with gauss elimination with partial pivotin

The pentium-micro processor, The Pentium   The next member of the Intel ...

The Pentium   The next member of the Intel family of microprocessors was the Pentium, introduced in the year 1993. With the Pentium, Intel broke its custom of numeric model name

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