Как я могу проверить условие с плавающей запятой? - PullRequest
0 голосов
/ 30 сентября 2019

Я хочу создать цикл, который позволит этой программе принимать значения только от 5 до 20. Я пытался использовать blt, но он говорит, что $ f0 недействителен

   li $v0,4            
   la $a0,improvement
   syscall

   li $v0,6             
   syscall
   l.s $f6, zero
   blt $f0,$f6, failure 



 failure:
   li $v0,4            
   la $a0,error
   syscall

   li $v0,6             
   syscall

mov.s $f4,$f0

Так что в основном происходитчто программа читает значение с плавающей запятой, и я хочу, чтобы он проверил, меньше ли оно 0 или больше 20, если оно затем, перейдите к функции сбоя и запросите другое значение, как только оно будет завершено, переместите значение в $ f0 в$ f4

1 Ответ

0 голосов
/ 30 сентября 2019

Как отметил Ален в комментарии. c.xx.s

unsigned int dofc ( float x, float y )
{
    if(x<y) return(1);
    return(0);
}

00000000 <dofc>:
   0:   460e603c    c.lt.s  $f12,$f14
   4:   00000000    nop
   8:   45010002    bc1t    14 <dofc+0x14>
   c:   24020001    li  $2,1
  10:   00001025    move    $2,$0
  14:   03e00008    jr  $31
  18:   00000000    nop
...