• 100% Satisfaction Guarantee
Ingo U, Software Engineer
Category: Homework
Satisfied Customers: 755
Experience:  Over 25 years experience in software development. Expert in Microsoft .Net, C#, C++, VB, SQL
44076068
Ingo U is online now

# this is my assignment on Assembly Language Programming..

### Customer Question

this is my assignment on Assembly Language Programming.. all the requirement u need are below:

In order to complete this assignment, you need to setup MASM (and Visual Studio) on your home computer or laptop if this is where you intend to do your assignments. If you plan to use the lab computers, go to NW201 and make sure the MASM environment is working.

1. A) [10 marks] Write a program which defines four double word variables, A, B, C & D in the data segment, assigns any values you like to the variables, and then solves the following equation:

A = (A - B) + (C - D) using only EAX and EBX

Show the final answer in a debugging window by setting a break point on the instruction which saves the answer back into variable A. Include a screenshot of the debugging window in the Word file. Also, call the DumpRegs library function to show the values in EAX and EBX. Include a screenshot of the console.

2. B) [10 marks] Write a program that uses a loop to calculate the first twenty-five values of the Fibonacci number sequence described by the formula: Fib(0) = 0, Fib(1) = 1, Fib(n) = Fib(n-1) + Fib(n-2). Place each value in the EAX register and display it using the WriteDec library function. Use the WriteString library function to print a string “, “,0 which is a comma, a space and a null terminator and the CrLf function to print a newline character (see Chapter 5.4.3, pages 158-70). Display each Fibonacci number inside the loop. The output would be something like:

0, 1, 1, 2, 3, 5, 8, 13, 21, ...

C) [20 marks]

Use the following array definitions in the data segment of your program:

arrayA BYTE arrayB SWORD arrayC DWORD copyA BYTE copyB SWORD copyC DWORD

10, 20, 30 40, 50, 60, 70
-1, -2, -3, -4, -5, -6, -7, -8, -9, -10 100h, 200h, 300h, 400h
7 DUP(?)
10 DUP(?)
4 DUP(?)

Then create a program which:

a) Prints the original contents of the arrays in HEX using the WriteHex library function (single line with spaces).

COSC2406SS15 – Assembly Language Programming

1. b) Reverses the contents of the arrays using the SIZEOF, TYPE and LENGTHOF operators as well as a loop with indirect or indexed addressing. The copies would go into copy arrays – that is arrayA is reversed into copyA

2. c) Print the contents of the copy arrays (after the reversal) in HEX using the WriteHex library function.

Include a screenshot of the program output with the code in the Word document.

Submit your Word file (one file only) to CMS using the file name ASSIGN3_YourName.docx where YourName is ***** ***** name followed by your first name. Ex. Using my name, the file would be ASSIGN3_LajoieMichael.docx. Also, be sure to include your name at the beginning of the Word document.

Submitted: 2 years ago.
Category: Homework
Expert:  Ingo U replied 2 years ago.

Hi,

I'm guess you're using the Irvine book? What edition of the book and/or Visual Studio?
I don't have the book itself but the sample code being referred to is available.

For the specific assignment, could you please post, attach or upload all relevant details and any related file(s)?
Use wikisend.com, or a file sharing site of your choice.

Thanks,
Ingo U

Customer: replied 2 years ago.

I have attached the picture of the book I am using also yes I'm using Irvine..and it's done on the visual studio ... can you please be sure that you don't use any materials or any information not covered yet in the course because we only covered on that book till this assignment

Expert:  Ingo U replied 2 years ago.

Could you please upload the assignment file which you pasted above, since the auto-formatting sometimes removes important details of code snippets.

Also, I don't know what's been covered in the course, as I said I don't have the book or any of your course materials. Perhaps you can tell me what chapters of the book you've used, since the sample code is organized by chapters.

Expert:  Ingo U replied 2 years ago.

Hi,

I did parts 1 and 2 since I could read and understand (I think) the posted text. Here they are:

https://www.dropbox.com/s/iw1nll3ibuw95lt/Part1.zip?dl=0

https://www.dropbox.com/s/ks20mjgr08153qk/Part2.zip?dl=0

They are VS2010 solutions, but newer VS should be able to read and convert them as well.

The remaining txt, starting with "C) [20 marks]" looks garbled, please post a source document with the original text if possible. Even a picture/scan would do...

Expert:  Ingo U replied 2 years ago.

I started working on part 3 using my best guess, should have something for you tomorrow.
In the meantime, also please try out the first 2 parts and let me know if you have any problems.

Expert:  Ingo U replied 2 years ago.

Hi, haven't heard from you in a while.

Have you moved on or are you still interested in the last part?

Expert:  Ingo U replied 2 years ago.

Hi,
just following up, were you able to use my solution?
Please feel free to post any additional questions, comments or concerns you may have regarding this issue.

If you're not yet satisfied with the result, please let me know what is missing.
I will do my best to make it right for you.

Otherwise, please don't forget to rate my service - I don't get paid for my work until your rating is received.

Regards,
Ingo U

Expert:  Ingo U replied 1 year ago.