Alsooo wir sollen ein Programm in Assembler schreiben, dass eine ganze Zahl einließt und überprüft ob diese Zahl gerade oder ungerade ist. Soweit so gut, jedoch bekomme ich bei meinem Code eine Endlosschleife und sehe ehrlich gesagt meinen Fehler nicht
Könnte mir jemand auf die Sprünge helfen?
Hier ist eine Liste mit allen Befehlen:


Mein Code:
Hier ist eine Liste mit allen Befehlen:


Mein Code:
Code:
#Einlesen einer Zahl
addi zero t0 1
sysmove exc t0
syscall
#Zahl nach a0 kopieren
sysmove a0 I[0]
#Prüfen ob Zahl gerade ist
ldd t1 zero 0
ldd t2 zero 0
ldd t3 zero 1 #Register mit Inhalt 1
ldd t4 zero 0 #Register mit 0
#divide:
subi a0 t2 2 # Subtraktion mit 2
ldd t2 a0 0 #Move nach a0
beq a0 t3 11 #Vergleich a0 mit 1
beq a0 t4 13 #Vergleiche a0 mit 0
jmp 6
#ungerade:
cout ungerade
syscall
#gerade:
cout gerade
syscall