$24
Time it took Matthew to complete: 15 mins (but I was super rusty when I did it)
All programs must compile without warnings when using the -Wall and -Werror options
Submit only the files requested
Do NOT submit folders or compressed files such as .zip, .rar, .tar, .targz, etc
If submitting in a group on Grade Scope please make sure to mark your partner.
Only one of you has to submit there
Your program must match the output exactly to receive credit.
Make sure that all prompts and output match mine exactly.
Easiest way to do this is to copy and paste them
All input will be valid unless stated otherwise
Print all real numbers to two decimal places unless otherwise stated
The examples provided in the prompts do not represent all possible input you can receive.
All inputs in the examples in the prompt are underlined
You don't have to make anything underlined it is just there to help you differentiate between what you are supposed to print and what is being given to your program
If you have questions please post them on Piazza
(Time 15 min)Write an assembly program called 64bitAdd.s that adds two 64 bit numbers together.
1.
The first number will be referenced by the label num1 and the second number will be
referenced by the label num2.
2.
The upper 32 bits of the sum should be placed in EDX and the lower 32 bits in EAX.
3.
AFTER the last line of code that you wish to be executed in your program please place the
label done.
1. Make sure that there is an instruction after the done line and a new line after that
instruction. If you don't your output won't match mine.
4.
I have included a Makefile for you that will compile your program.
5.
IT IS OF VITAL IMPORTANCE THAT YOU NAME YOUR LABELS AS
SPECIFIED AND MAKE THE APPROPRIATE AMOUNT OF SPACE FOR EACH
VARIABLE! I will be using gdb to test your code and if your labels do not match then the
tests will fail. You must also make sure to include the done label AFTER the last line of
code you want executed in your program so that I know where to set break points.
6.
The following table shows how the numbers will be laid out in memory.
num1:
Upper 32 bits of num1
Lower 32 bits of num1
num2:
Upper 32 bits of num2
Lower 32 bits of num2
7. This problem is much, much easier than the rest and you should not base the difficulty of the other problems off of this one