Question

In: Computer Science

#use MPLAB X IDE # Question 1 for HW 3 # Your solution should implement the...

#use MPLAB X IDE
# Question 1 for HW 3
# Your solution should implement the following conditional statement:
#   if (A < 10)
#       D = C + 10
#   else if (A == 20)
#       D = C - B
#   else
#       D = C + B
        
    .global    main
    .data

### THESE VARIABLES ARE SIMPLY GIVEN VALUES TO START
###   WITH--CHANGE THEIR VALUES AND VERIFY YOUR PROGRAM
###   WORKS APPROPRIATELY IN ALL CASES
A:  .int    3
B:  .int    1
C:  .int    7
D:  .int    0
        
    .text
    .set       noreorder
    .ent       main

main:
    # Load variables into registers
    lw  $t0, A
    lw  $t1, B
    lw  $t2, C
    
    # Implement conditional statement described above
    # Make sure final result is in memory in variable "D"
        
# This code simply loops infinitely
spin:   
    j          spin
    nop

    .end        main    

Solutions

Expert Solution

The program required to have the logic in question is as below.

.global    main
    .data

### THESE VARIABLES ARE SIMPLY GIVEN VALUES TO START
###   WITH--CHANGE THEIR VALUES AND VERIFY YOUR PROGRAM
###   WORKS APPROPRIATELY IN ALL CASES
A:  .int    3
B:  .int    1
C:  .int    7
D:  .int    0
        
    .text
    .set       noreorder
    .ent       main

main:
    # Load variables into registers
    lw  $t0, A
    lw  $t1, B
    lw  $t2, C
    
    # Implement conditional statement described above
   bge $t0,10,next  # if a<10 execute below instruction else gonto lable next
   addi $t3,$t2,10  #D = C+10
   j done
  next: 
   bne $t0,20,else  #if a=20 execute below else go to else label
   sub $t3,$t2,$t1  #D = C-B
   j done
  else:
   add $t3,$t2,$t1  # D= C+B
    # final result is in memory in variable "D"
    done:
     sw $t3,D  #store value of D in memory  
    nop

    .end        main

Related Solutions

To develop a program for the PIC 16F84A using either MPLAB X IDE simulator software. T...
To develop a program for the PIC 16F84A using either MPLAB X IDE simulator software. T he PIC 16F84A has 8 LEDs connected to Port B. The program is to convert your student number (10 ASCII characters), taken in reverse order, one character at a time, to Gray code. Each converted character is to be displayed on 4 of the LEDs connected to Port B (B0 to B3) of the microcontroller. Further, each converted character will be displayed for 3...
Modify HW#1. C++ use,Write a multithreaded program that tests your solution to HW#1. You will create...
Modify HW#1. C++ use,Write a multithreaded program that tests your solution to HW#1. You will create several threads – for example, 100 – and each thread will request a pid, sleep for a random period of time, and then release the pid. (Sleeping for a random period approximates the typical pid usage in which a pid is assigned to a new process, the process executes and terminates, and the pid is released on the process’ termination).On UNIX and Linux systems,...
Write a Program using MPLAB IDE and XC8 compiler to do the followings: 1. When the...
Write a Program using MPLAB IDE and XC8 compiler to do the followings: 1. When the Program Starts it should send your Name and ID# to the Serial Port 2. Display the result on Tera Term. 3. Read PORTB buttons in an infinite loop (Main Loop which is the Read Buttons Loop), your program should not block when reading the Buttons except in De-bouncing.. But you need to de-bounce each button when pressed 3.1 If the user presses PORTB, RB0...
Control DC Using PIC18f46k20 and MPLAB IDE v8.8, write a program that can 1. Start and...
Control DC Using PIC18f46k20 and MPLAB IDE v8.8, write a program that can 1. Start and Stop the motor 2.Vary The motor Speed 3.Change the direction of the motor rotation 4.Display motor speed in OLED screen using c of MPLAB IDE v8.8 please test the code before posting
This is a engineering analysis hw question please show your work I will use it to...
This is a engineering analysis hw question please show your work I will use it to study PROBLEM 1 (20PT) Perform the following tasks for the function, f(x), shown below.    f(x) := x*cos(pie*x/2.4)-3*x2+ex/1.5 (use this function to answer the following parts a, b, c . there is no figure given) (the work you give me I will use to plug it into Mathcad which is the program we use to show our work) (if you feel like you are...
Write a multithreaded program that tests your solution to HW#1. You will create several threads –...
Write a multithreaded program that tests your solution to HW#1. You will create several threads – for example, 100 – and each thread will request a pid, sleep for a random period of time, and then release the pid. (Sleeping for a random period approximates the typical pid usage in which a pid is assigned to a new process, the process executes and terminates, and the pid is released on the process’ termination). On UNIX and Linux systems, sleeping is...
: EACH QUESTION SHOULD BE 1 TO 3 PAGES IN LENGTH TO COVER THE MATERIALS. USE...
: EACH QUESTION SHOULD BE 1 TO 3 PAGES IN LENGTH TO COVER THE MATERIALS. USE CITATIONS FROM YOUR RESEARCH AND THE CLASS MATERIALS. PROVIDE WORKS CITED PAGE. Question: what is meant by the term Jus Cogens. Why is it important to international law and what effect does it have on the making of international law.
Taylor Polynomial HW 1) Evaluate cos ( 2 π / 3 ) on your calculator and...
Taylor Polynomial HW 1) Evaluate cos ( 2 π / 3 ) on your calculator and using the first 4 terms of the TP for cos x. 2) Integrate cos ( x^3 ), from 0 to π / 6, using the first 3 terms of the TP for cos x. 3) Evaluate e^x at x = .4 on your calculator and using the first 5 terms of the TP for e^ x. 4) Integrate e^x3, from 0 to .3, using...
Your solution should be in good form with amounts clearly labeled and should use appropriate account...
Your solution should be in good form with amounts clearly labeled and should use appropriate account titles. Consider each of the transactions below. All of the expenditures were made in cash. The Edison Company spent $12,000 during the year for experimental purposes in connection with the development of a new product. On September 1, 2011, Tristar signed a $40,000 noninterest-bearing note to purchase equipment. The $40,000 payment is due on September 1, 2012. Assume that 8% is a reasonable interest...
Using your solution or your instructor's solution from the Module 8 ungraded practice exercise, implement a...
Using your solution or your instructor's solution from the Module 8 ungraded practice exercise, implement a unit test for the Pair class by adding a main method. Create three small constituent classes (I created PeanutButter, Jelly, and Mustard classes) and insert various combinations of them into an array of Pair objects. Thoroughly test the equals(), hashCode(), and toString() methods from the Pair class with your main method. Note: override the toString() method in each of your constituent classes so they...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT