Я хочу сделать код, который находит max, min, sum до тех пор, пока пользователь не введет 'q'.Можете ли вы проверить мой код, что не так?
Я пытался сделать код MIPS, но он не работает
+++++++++++++++++++++++ Mips Code +++++++++++++++++++++++++++++
str_num : .asciiz "Put your input num"
str_char: .asciiz "Put your input char"
str_max: .asciiz "Max is"
str_min: .asciiz "Min is"
str_sum: .asciiz "Sum is"
sum_symbol : .asciiz "s" # sum 's'
max_symbol : .asciiz "x" # max 'x'
min_symbol : .asciiz "n" #min 'n'
quit_symbol : .asciiz "q" # quit ‘q’
n_line : .asciiz " \n" # make one line
#Initialize max($t2), min($t3), sum($t4)
add $t2, $t2, $zero
add $t3, $t3, $zero
add $t4, $t4, $zero
Loop: li $v0,4 #print str
la $a0,str_num #
syscall # print string
li $v0,5 # scanf
syscall
add $t0,$zero,$v0 # move $v0 to $t0
li $v0,4 #print str
la $a0,str_char #
syscall #print string
li $v0,5 # scanf
syscall
add $t1,$zero,$v0 # move $v0 to $t1
# Q. I want to make that if input_char is something, move to that func
#update max value
slt $t5, $t2, $t0
# Q. If it's true, i want to update the max value
#update min value
slt $t5, $t0, $t3
#Initialize and update sum value
add $t4, $t4, $t0
beq $t1, quit_symbol, Exit # if input_char == q, exit
beq $t1, max_symbol, Max # if input_char == x, print max
beq $t1, min_symbol, Min # if input_char == n, print min
beq $t1, sum_symbol, Sum # if input_char == s, print sum
Max:
# Q. How to print out result string and integer together
Min: add $t3, $t0, $zero # update max value
# Q. How to print out result string and integer together
Sum:
j Loop
Exit: li $v0, 10 syscall
.end
Я хочу сделать программу, которая выводит max, min, сумму ввода int, ноДолжно работать, когда пользователь вводит определенный символ