| <<< Conditional jump example 1 | Index | while loop example >>> |
# Pseudocode:
# if (a < b + 3)
# a = a + 1
# b = b + a
# Register mappings:
# a: $t0, b: $t1
# One implementation
addi $t2, $t1, 3 # tmp = b + 3
blt $t0, $t2, ifless # if (a < tmp)
j finish
ifless:
addi $t0, $t0, 1 # if true, a = a + 1
finish:
add $t1, $t1, $t0 # b = b + a
# Another implementation
addi $t2, $t1, 3 # tmp = b + 3
bge $t0, $t2, finish # if (a >= tmp) goto finish
addi $t0, $t0, 1 # a + 1
finish:
add $t1, $t1, $t0 # b = b + a
| <<< Conditional jump example 1 | Index | while loop example >>> |