li.s $f1, 0.2
li.s $f2, 2.0
mul.s $f3, $f1, $f2
mov.s $f12, $f3
li $v0, 2 # system call 2 to print float
syscall
The code above gives me 0.40000001
instead of exactly 0.40000000
. Is there a way to bypass this?
Sorry if the problem is too obvious as I'm very new to MIPS and assembly language.