Buongiorno a tutti. Ho provato a scrivere una breve routine che dovrebbe identificare se un numero inserito è primo oppure no. Eccola qua:
Il codice viene eseguito praticamente tutto, solo che all'etichetta "succ", al momento di salvare la word in memoria mi viene restituito errore, cosa che non avviene se sostituisco l'istruzione con sb, ottenendo però risultati indesiderati. In altri casi la store word funzionava, ma in questo caso no. Non mi spiego francamente il perchè. Non dovrebbe estendere il segno?codice:.data numeri: .byte 0x07 prm: .text prec: la $t0, numeri carica: lb $t1, ($t0) add $t0, $t0, 1 move $t4, $zero addi $t4, $t4, 1 primi: addi $t4, $t4, 1 div $t1, $t4 mfhi $t3 beq $t4, $t1, succ beq $t3, $zero, fine bne $t3, $0, primi succ: la $t2, prm sw $t1, 4($t2) jal fine #Trovato numero primo fine: j fine

Rispondi quotando