Assembly mips组装中的判别式和根

Assembly mips组装中的判别式和根,assembly,mips,Assembly,Mips,我是Mips汇编的新手,我想写一个程序来计算二次函数的根。我已经找到了判别式,但现在我想检查是否>0,您是否知道根可能不是整数?您熟悉浮点指令吗?你是故意在这里使用整数算术而不是浮点算术吗?你是对的,我忘了提到根必须是整数@Ruud HeldermanSee,例如,乘以0对你有什么好处?@ErikEidt因为这是我第一天参加汇编,所以我想得到判别式,我想解的函数是ax^2+bx,所以u是对的,这是浪费时间。 .data msg_read_a: .asciiz"dwse arithmo

我是Mips汇编的新手,我想写一个程序来计算二次函数的根。我已经找到了判别式,但现在我想检查是否>0,您是否知道根可能不是整数?您熟悉浮点指令吗?你是故意在这里使用整数算术而不是浮点算术吗?你是对的,我忘了提到根必须是整数@Ruud HeldermanSee,例如,乘以0对你有什么好处?@ErikEidt因为这是我第一天参加汇编,所以我想得到判别式,我想解的函数是ax^2+bx,所以u是对的,这是浪费时间。
.data
msg_read_a: .asciiz"dwse arithmo a:"
msg_read_b: .asciiz"dwse arithmo b:"
msg_read_x1: .asciiz"dwse diastima x1:"
msg_read_x2: .asciiz"dwse diastima x2:"

akuro: .asciiz"h sunartish den mhdenizetai"
midenizetai: .asciiz"h sunarthsh midenizetai"

.text 
main:

li $v0,4
la $a0,msg_read_a    #α
syscall
li $v0,5
syscall
move $t0,$v0

li $v0,4
la $a0,msg_read_b    #β
syscall 
li $v0,5
syscall
move $t1,$v0

li $v0,4
la $a0,msg_read_x1    #διαστημα χ1
syscall
li $v0,5
syscall
move $t2,$v0

li $v0,4
la $a0,msg_read_x2    #διαστημα χ2
syscall
li $v0,5
syscall
move $t3,$v0


mul $t5,$t1,$t1
mul $t6,$t1,0  #b^2
li $t7,4        #+4
mul $t7,$t7,$t6 

sub $t8,$t5,$t7 #τ8=διακρινουσα

bgt $t8,0, mega
blt $t8,0, mikro
beq $t8,0, isioi

mega: mul $t5,$t1,-1  #-b
syscall
j exodos
iso: mul $t5,$t1,-1  #-b
mul $t6,$t0,2
div $t7,$t5,$t6
syscall
j exodos
exodos: li $v0, 10
syscall