Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

I need help with this ASM Project: COSC 2 4 2 5 Programming Project 1 You will write a simple assembly language program that performs

I need help with this ASM Project: COSC 2425 Programming Project 1
You will write a simple assembly language program that performs a few
arithmetic operations. This will require you to establish your programming
environment and create the capability to assemble and execute the other
assembly programs that will be part of this course.
Your North Lake College student ID number is a 7-digit number. Begin by
splitting your student ID into two different values. Assign the four most
significant digits to a variable called 'left' and the three least significant
digits to a variable called 'right'.
You must choose the data type that is appropriate for the range of decimal
values each variable can store. You will choose a data type when you define
each of the variables in your program. Try to make efficient use of memory.
Calculate the sum of the two variables 'left' and 'right'. Store this
result in a variable called 'total'.
Calculate the positive difference between the variables 'left' and
'right'. Store this result in a variable called 'diff'.
Define a character string called 'message' that contains the characters,
"Hello World!".
Define an array of data type WORD called 'numbers' that is initialized to
the following values: 1,2,4,8,16,32, and 64.
Write assembly language code using what you know so far (do not look
ahead in the book just yet) to determine the length of 'numbers'. Store
this value in a variable called 'arrayLength'.
Move the contents of the variable 'left' into the EAX register.
Move the contents of the variable 'right' into the EBX register.
Move the contents of the variable 'total' into the ECX register.
Move the contents of the variable 'diff' into the EDX register.
Move the contents of the variable 'arrayLength' into the ESI register.
Call the author's DumpReg routine to display the contents of the registers. This is the code I have so far: INCLUDE Irvine32.inc
.data
left DWORD 3575
right DWORD 133
total DWORD ?
diff WORD ?
numbers WORD 1248163264
.code
main PROC
mov eax, left
add eax, right
mov total, eax
mov eax, left
mov eax, right
mov diff, eax
mov eax, left
mov ebx, right
mov ecx, total
mov edx, diff
mov esi, arrayLength
call DumpRegs
END MAIN

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Data Science For Dummies

Authors: Lillian Pierson ,Jake Porway

2nd Edition

1119327636, 978-1119327639

More Books

Students also viewed these Databases questions

Question

5. Understand how cultural values influence conflict behavior.

Answered: 1 week ago

Question

e. What do you know about your ethnic background?

Answered: 1 week ago