if else

if (x >= 0) {
	// codice da eseguire se il test è vero
} else {
	// codice da eseguire se il test è falso
}
// codice seguente

Diventa

.text

	li t0, 5                                           # x = 5
	
	bge t0, zero, Else                                 # test x >= 0

	# codice da eseguire se il test è vero

	j EndIf                                            # esco dall’IF

	Else:
		# codice da eseguire se il test è falso
	EndIf:
		# codice seguente

j è l’istruzione di salto.

esempio

if i == j:
	f = g + h
else:
	f = g - h
addi s3, zero, i           # valore di i da inserire
addi s4, zero, j           # valore di j da inserire

bne s3, s4, Else         # vai a Else se i != j

add s0, s1, s2           # f = g + h (saltata se i != j)

j Esci                   # vai a Esci

Else: sub s0, s1, s2

Esci: # resto del codice

while e for

while i < 10:
	i += 1

in Assembly

li t0, 1
li t1, 10

While:
	bge t0, t1, EndWhile
	addi t0, t0, 1
	j While

EndWhile:
	# parte del codice dopo il while

Un ciclo for è semplicemente un ciclo while con un contatore che si ferma a una certa soglia specificata