I'm new to Assembly and I know this is a fair easy question.
I supposed to do unsigned integer addition for $a0 and $a2 and store the result in $v0 by checking the carry flag.
The assignment says:
Use only
addu, notadd, for adding and usesltfor determining if the addition of two unsigned integers produced a carry, without using conditional branch instructions.
Here is my code:
addu $v0, $a0, $a2
sltu $t0, $v0, $a0
For this code, if a carry is produced, $t0 equals 1.
But the question said use only slt to check the carry flag and no conditional branch instruction can be used. I'm a little bit confused about how this is gonna to work. Any help would be appreciated.
$t0, I take it. - Michaelsltmakes little sense (it can be done, but in a pointlessly verbose way) - harolda <u b = (a ^ signbit) <s (b ^ signbit), and also that flipping the sign is the same as adding or subtracting 1 to/from it. You can avoidsltuthat way (and even xor, if you want). - harold