Please help, my code does not return the correct average value in MIPS assembly code .dataprompt1: .asciiz "Enter the number of real numbers: "prompt2: .asciiz "Enter a real number: "result: .asciiz "The average is: " .text.globl mainmain:    # Prompt for the number of real numbers    li $v0, 4    la $a0, prompt1    syscall        li $v0, 5        # Read integer (n)    syscall    move $t0, $v0    # Store in $t0    move $t1, $zero  # Counter for input numbers        # Initialize floating-point sum to 0.0    mtc1 $zero, $f0      cvt.s.w $f0, $f0  input_loop:    beq $t1, $t0, calculate  # Exit loop if all numbers entered        # Prompt for each real number    li $v0, 4    la $a0, prompt2    syscall     li $v0, 6        # Read float    syscall        # Add input to sum    add.s $f0, $f0, $f12        addi $t1, $t1, 1        j input_loop calculate:    # Calculate average    mtc1 $t0, $f2            cvt.s.w $f2, $f2         div.s $f4, $f0, $f2       # Print the result    li $v0, 4    la $a0, result    syscall     mov.s $f12, $f4      li $v0, 2            syscall     # Exit    li $v0, 10    syscall

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Topic Video
Question
100%

Please help, my code does not return the correct average value in MIPS assembly code

.data
prompt1: .asciiz "Enter the number of real numbers: "
prompt2: .asciiz "Enter a real number: "
result: .asciiz "The average is: "

.text
.globl main
main:
    # Prompt for the number of real numbers
    li $v0, 4
    la $a0, prompt1
    syscall
    
    li $v0, 5        # Read integer (n)
    syscall
    move $t0, $v0    # Store in $t0
    move $t1, $zero  # Counter for input numbers
    
    # Initialize floating-point sum to 0.0
    mtc1 $zero, $f0  
    cvt.s.w $f0, $f0 

input_loop:
    beq $t1, $t0, calculate  # Exit loop if all numbers entered
    
    # Prompt for each real number
    li $v0, 4
    la $a0, prompt2
    syscall

    li $v0, 6        # Read float
    syscall
    
    # Add input to sum
    add.s $f0, $f0, $f12
    
    addi $t1, $t1, 1    
    j input_loop

calculate:
    # Calculate average
    mtc1 $t0, $f2        
    cvt.s.w $f2, $f2     
    div.s $f4, $f0, $f2  

    # Print the result
    li $v0, 4
    la $a0, result
    syscall

    mov.s $f12, $f4  
    li $v0, 2        
    syscall

    # Exit
    li $v0, 10
    syscall

Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Instruction Format
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education