Re: MIPS in latex

#26974
Up
0
Down
::


E’ un linguaggio di programmazione Assembly: in sintesi, rispetto a quelli di alto livello come Java, C ecc.. risulta più vicino al linguaggio macchina (quest’ultimo direttamente in binario).
Esempio:
`
proc_inserimento:
addi $sp, $sp, -16 # Allocazione dello stack
sw $ra, 0($sp) # Ci sono procedure interne, quindi esegue salvataggio
# indirizzo di ritorno

sw $s0, 4($sp) # $s0, $s1, $s2 verranno modificati, quindi salvali
sw $s1, 8($sp)
sw $s2, 12($sp)

move $s0 $zero # $s0 (= Testa) = 0
move $s1 $zero # $s1 (= Coda ) = 0
move $s2 $zero # Registro che conterra' i simboli non terminali correnti
move $s3 $zero # Flag per segnalare se alla prima produzione

la $a0, mess_iniziale # Stampa richiesta di inserimento del simboli iniziale
li $v0, 4
syscall

li $t0, 65 # Caricamento di costanti necessarie al controllo
li $t1, 89 # sui caratteri non validi per non terminale

li $v0, 12 # Lettura simbolo iniziale, e…
syscall

move $s2, $v0 # …successivo controllo della correttezza
blt $s2, $t0, errore_parsing
bgt $s2, $t1, errore_parsing
`
In ogni caso credo di aver trovato la soluzione ripiegando, almeno per stavolta, su un’esportazione del codice sorgente come file rtf… se poi esiste una risposta alla domanda di sopra è comunque gradita per futuri utilizzi.

Go to top