1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
dmitriy555 [2]
3 years ago
5

You are tasked to calculate a specific algebraic expansion, i.e. compute the value of f and g for the expression: ???? = (??????

?? − ???????????? + ???????????? − ????????) ???? = (???????????? + ????????????????) without using any intrinsic multiplication instructions, subroutines, and function calls. More formally, write MIPS assembly code that accepts four positive integers A, B, C, and D as input parameters.
Computers and Technology
1 answer:
melisa1 [442]3 years ago
8 0

Answer:

.data

prompt: .asciiz "Enter 4 integers for A, B, C, D respectively:\n"

newLine: .asciiz "\n"

decimal: .asciiz "f_ten = "

binary: .asciiz "f_two = "

decimal2: .asciiz "g_ten = "

binary2: .asciiz "g_two = "

.text

main:

#display prompt

li $v0, 4

la $a0, prompt

syscall

#Read A input in $v0 and store it in $t0

li $v0, 5

syscall

move $t0, $v0

#Read B input in $v0 and store it in $t1

li $v0, 5

syscall

move $t1, $v0

#Read C input in $v0 and store it in $t2

li $v0, 5

syscall

move $t2, $v0

#Read D input in $v0 and store it in $t3

li $v0, 5

syscall

move $t3, $v0

#Finding A^4

#Loop (AxA)

li $t6, 0

L1:

bge $t6, $t0, quit

add $s1, $s1, $t0 # A=S+A => $s1= A^2

addi $t6, $t6, 1 # i=i+1

j L1

quit:

#Loop (A^2 x A^2)

li $t6, 0

L1A:

bge $t6, $s1, quit1A

add $s5, $s5, $s1

addi $t6,$t6, 1

j L1A

#End of Finding A^4

#Finding 4xA^3

quit1A:

#Loop (4xB)

li $t6, 0

L2:

bge $t6, 4, quit2

add $s2, $s2, $t1

addi $t6, $t6, 1

j L2

quit2:

#Loop (BxB)

li $t6 , 0

L2A:

bge $t6, $t1, quit2A #loop2

add $s6, $s6, $t1 #add

addi $t6, $t6, 1 #add immediate

j L2A #loop2

quit2A: # perform proper program termination using syscall for exit

#Loop (BxB)

li $t6 , 0 #load immediate

L2AA:

bge $t6, $s2, quit2AA #loop2

add $t7, $t7, $s6 #add

addi $t6, $t6, 1 #add immediate

j L2AA #loop2

#End ofFinding 4xA^3

#Finding 3xC^2

quit2AA: # perform proper program termination using syscall for exit

#3 Loop (3 x (C x C)) FOR S3

li $t6 , 0 #load immediate

L3:

bge $t6, $t2, quit3 #loop3

add $s3, $s3, $t2 #add

addi $t6,$t6, 1 #add immediate

j L3 #loop3

quit3: # perform proper program termination using syscall for exit

#3 Loop (3 x (C x C)) FOR S3

li $t6 , 0 #load immediate

L3A:

bge $t6, 3, quit3A #loop3

add $s0, $s0, $s3 #add

addi $t6,$t6, 1 #add immediate

j L3A #loop3

#End of Finding 3xC^2

#Finding 2xD

quit3A: # perform proper program termination using syscall for exit

#4 Loop (2 x D) FOR S4

li $t6 , 0

L4:

bge $t6, 2, quit4 #loop4

add $s4, $s4, $t3 #add

addi $t6, $t6, 1 #add immediate

j L4 #Loop4

#End of Finding 2xD

#Finding AxB^2

quit4:

li $t6, 0

li $s1, 0

L5:

bge $t6, $t1, quit5

add $s1, $s1, $t1

addi $t6, $t6, 1

j L5

quit5:

li $t6, 0

li $s2, 0

L6:

bge $t6, $t0, quit6

add $s2, $s2, $s1

addi $t6, $t6, 1

j L6

#End of Finding AxB^2

#Finding C^2XD^3

quit6: #finds C^2

li $t6, 0

li $s1, 0

L7:

bge $t6, $t2, quit7

add $s1, $s1, $t2

addi $t6, $t6, 1

j L7

quit7: #finds D^2

li $t6, 0

li $s6, 0

L8:

bge $t6, $t3, quit8

add $s6, $s6, $t3

addi $t6, $t6, 1

j L8

quit8: #finds D^3

li $t6, 0

li $s7, 0

L9:

bge $t6, $t3, quit9

add $s7, $s7, $s6

addi $t6, $t6, 1

j L9

quit9: #finds C^2XD^3

li $t6, 0

li $s3, 0

L10:

bge $t6, $s1, end

add $s3, $s3, $s7

addi $t6, $t6, 1

j L10

#End of Finding C^2XD^3

end: # perform proper program termination using syscall for exit

#f is $t8

li $t8 , 0

sub $t8, $s5, $t7 # addition

add $t8, $t8, $s0 # subract

sub $t8,$t8, $s4 # subract

#g is $t9

li $t9 , 0

add $t9, $s2, $s3 # addition

#Display

#1st equation

li $v0,4 # display the answer string with syscall having $v0=4

la $a0, decimal # Gives answer in decimal value

syscall # value entered is returned in register $v0

li $v0, 1 # display the answer string with syscall having $v0=1

move $a0, $t8 # moves the value from $a0 into $t8

syscall # value entered is returned in register $v0

li $v0,4 # display the answer string with syscall having $v0=4

la $a0, newLine # puts newLine in between answers

syscall # value entered is returned in register $v0

li $v0,4 # display the answer string with syscall having $v0=4

la $a0, binary # Gives answer in binary

syscall # value entered is returned in register $v0

li $v0, 35

move $a0, $t8 # moves the value from into $a0 from $t8

syscall # value entered is returned in register $v0

li $v0,4 # display the answer string with syscall having $v0=4

la $a0, newLine # puts newLine in between answers

syscall # value entered is returned in register $v0

#2nd equation

li $v0,4 # display the answer string with syscall having $v0=4

la $a0, decimal2 # Gives answer in decimal value

syscall # value entered is returned in register $v0

li $v0, 1 # display the answer string with syscall having $v0=1

move $a0, $t9 # moves the value from $a0 into $t8

syscall # value entered is returned in reg $v0

li $v0,4 # display the answer string with syscall having $v0=4

la $a0, newLine # puts newLine in between answers

syscall # value entered is returned in register $v0

li $v0,4 # display the answer string with syscall having $v0=4

la $a0, binary2 # Gives answer in binary

syscall # value entered is returned in register $v0

li $v0, 35

move $a0, $t9 # moves the value from into $a0 from $t8

syscall # value entered is returned in register $v0

li $v0,4 # display the answer string with syscall having $v0=4

la $a0, newLine # puts newLine in between answers

syscall # value entered is returned in register $v0

#end the program

li $v0, 10

syscall

You might be interested in
A seven-octet pattern of alternating 0s and 1s used by the receiver to establish bit synchronization is a _______
Licemer1 [7]

Answer: Preamble

Explanation:

 Preamble is a 7- octet pattern of alternating the 0's and 1's and it allow devices in the network to easily synchronized the receiver clock. It also provide the bit level synchronization.

It basically allow the start of frame delimiter to provide the byte synchronization and assign a new frame. The bits are transmit orderly from left to right in the frame.  

5 0
3 years ago
Potential Energy and Kinetic Energy both mean "energy in motion" True or False​
Irina18 [472]

Answer:

false

Explanation:

pretty sure energy in motion is only for kinetic energy

4 0
3 years ago
Read 2 more answers
Chapter 20 reading and vocab review
aev [14]

Answer:

Essentially additive editing and stringing “the good stuff” together, whereas subtractive is more about stringing all your raw footage together and “removing the bad stuff”

Additive editing feels confident and concerned with the pursuit of a specific, existing vision. And it’s faster. Subtractive editing feels like a deeper listening to what the footage is saying, and holding on to many potential permutations.

Explanation:

Addictive editing -  creating a program from raw footage by starting by starting with nothing and adding selected components

Subtraction editing  - creating a program by removing redundant or poor quality material from the original footage

7 0
2 years ago
You have this code in your program.
earnstyle [38]

The line code will create array is G = array('f',[2.5, 3, 7.4])

<h3>What is meant by array ?</h3>

As opposed to defining distinct variables for each value, arrays are used to hold numerous values in a single variable. Set the data type (such as int) and the array name, followed by square brackets [, to construct an array.

An array is a collection of elements with the same type that are kept in nearby memory  locations and may each be separately referred to using an index to a special identifier. There is no need to declare five distinct variables when declaring an array of five int values (each with its own identifier).

In the C programming language, arrays are a derived data type that may contain primitive data types like int, char, double, float, etc.

To learn more about array refer to :

brainly.com/question/28061186

#SPJ1

6 0
1 year ago
How can you make your MakeCode micro:bit program display either the letter<br> A or the letter B?
Liula [17]

Answer:

Use a random number and control structure to decide which letter is displayed.

Explanation:

8 0
2 years ago
Other questions:
  • There are about what licensed drivers here in Florida
    7·1 answer
  • A _____ is a device that not only provides surge protection, but also furnishes desktop computers and network devices with batte
    7·1 answer
  • Hen using presentation software, what do you do when you "compose a slide"?
    5·1 answer
  • Does anyone have game design in connections
    13·1 answer
  • Dave has to create animations for a game. Which tool can Dave use?
    6·1 answer
  • What is an orthochromatic film?
    12·1 answer
  • 1. Write an if statement that assigns 20 to the variable y, and assigns 40 to the variable z
    10·1 answer
  • 50 ) What is the cell address of 4th row and 4th column? A) 4D B) E4 оооо C) 04 D) B4​
    9·1 answer
  • The diagram shows the positions of the Sun, Earth, and Moon during each moon phase. When viewed from Earth, at what point does t
    15·1 answer
  • List seven media features that can be used in media queries.
    10·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!