How to find even odd in MIPS assembly using intege

2019-08-07 14:24发布

问题:

How can I find whether the input is even or odd in MIPS? I am trying to find out using integer registers, but my program is not working. Here is the code:

li $s1,2

div $s0,$s1

mfhi $t0

xor $t1,$t0,$0

beq $t1,0,Even

j Odd

But this program shows even odd numbers as even this is because the result is in decimal like 0.3 . How can I solve this issue?

回答1:

You need to and the number which you want to check with 0x01.

This is how you use and in mips: and $d, $s, $t

If the value in target register is 1 then it is odd else even.