Homework 2
ATTENZIONE mi avete fatto notare che i numeri centrali del triangolo di Tartaglia crescono circa come potenze di 2 x cui con 32 bit è possibile calcolare solo 31 righe. Dovete calcolare il triangolo di Tartaglia solo fino alla riga 31
Si scriva un programma in assembly MIPS che, preso in input da stdin (con l'apposita syscall) un intero
N non negativo (0<=N<
32 ),
calcoli e stampi sulla console l'n-sima riga (partendo dalla 0 che è "1") del triangolo di Tartaglia (con i numeri separati da uno spazio).
Il nome del file con il codice del programma deve avere il formato CognomeNome.asm.
NOTA non stampate altri messaggi o prompt oltre alla riga richiesta
NOTA potete allocare staticamente solo variabili ed un vettore di
32x32 words. NON precalcolate la tabella
NOTA la complessità della implementazione ricorsiva ovvia è esponenziale. Se però usate la programmazione dinamica diventa quadratica.
Es.: usando (in unix) il comando:
echo 5 | java -jar Mars4_3.jar CognomeNome.asm
il programma deve stampare
SOLO la sequenza di interi:
1 5 10 10 5 1 (senza altre scritte o prompt)
Voto
Chi svolge correttamente l'esercizio riceve 1 punto.
Premio chi realizza la funzione in modo ricorsivo riceverà mezzo punto in più
Chi ha il compito troppo simile ad M altri compiti riceve 1/M punti (sempre che funzioni)
Consegna (scadenza mezzanotte di domenica 19 maggio)
- rinominate il file usando la convenzione CognomeNome.asm (quindi il file del sig. Cicco Pasticcio sarà CiccioPasticcio.asm)
- inviatelo tramite la pagina di consegna entro la mezzanotte di domenica 19 maggio.
- per inviare dovete essere registrati a twiki.
--
AndreaSterbini - 11 May 2013