+1-617-874-1011 (US)
+61-7-5641-0117 (AU)
+44-117-230-1145 (UK)
Live Chat

# EECS 2110 assembly language programming

Section 1:

Using the MARS or SPIM simulator develop a program that will evaluate the following expression:

3 * n + n * (n – 1) – 15 where n is stored in a data location and is set to 15. Your program should use the system calls to print the result and to exit the program.

Section 2:

Using the MARS or SPIM simulator develop a program that will implement the following conditional statement.

```{`
If ( n is even) {
n = n / 2;
} else {
n = 3 * n + 1;
}`}```

In this case, n is to be input by the user (assume they input a non-negative value), the conditional is performed, and the resulting n is to be output. Again, use the system calls for input, output, and exiting the program. Hint: There is a remainder pseudoinstruction for the MIPS architecture that you can use to determine if the value is even or odd or you can look at bit 0 to determine if the value is even or odd.

Section 3:

You are to take the conditional from the previous section and build a loop around it to find the Collatz sequence. The structure of this would be:

```{`
while (n > 1) {
If (n is even) {
n = n / 2;
} else {
n = 3 * n + 1;
} cout << n;
}`}```

Section 4:

You are to write a leaf subprogram that will output the following information:

Your Name

Your favorite color

Your favorite sports team

The main program should call your leaf routine and then exit using the system call.

Section 5:

Write a program with a leaf subprogram that will take two values in \$a0 and \$a1 and compute their greatest common divisor. The greatest common divisor should be returned in the \$v0 register. The main program should input the values for \$a0 and \$a1 using system calls, call your subprogram, and then output the result using a system call.

Improve Your Grades with Custom Writing Help
Homework Help
Writing Help
Editing Services
Plagiarism check
Proofreading services
Research Project help
Custom writing services

Disclaimer : The study tools and academic assistance/guidance through online tutoring sessions provided by AssignmentHelp.Net is to help and enable students to compete academically. The website does not provide ghostwriting services and has ZERO TOLERANCE towards misuse of the services. In case any user is found misusing our services, the user's account will be immediately terminated.