Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Notice Board

Per partecipare al corso di Fondamenti di programmazione 2023-24 loggatevi e attivatelo nella vostra pagina dei corsi preferiti. A quel punto il corso appare nel menù personale cliccando sul proprio avatar. Per i materiali degli anni precedenti seguite lo stesso metodo.

To join the Programming/Lab 2023-24 course, log-on and select it on the my courses page. It will appear on the personal menu of your avatar. For earlier years use the same method.

Possiamo passare un indice al posto dell'indirizzo?

in Homework 3 by (9.9k points)
closed by
Salve, possiamo passare un indice al posto dell'indirizzo alle due funzioni che dobbiamo realizzare? Ossia, in un'altra forma, possiamo decidere noi come chiamare la funzione ricorsiva?
663 views
closed with the note: answered

3 Answers

Best answer
andrea.sterbini (207920 points)
750 1267 2373
by (208k points)
selected by
No, passate l'indirizzo (e gli altri argomenti che ritenete necessari)
by (9.9k points)
Capito, quindi il passaggio dell'indirizzo è obbligatorio.
A
Angelo9787 (3670 points)
10 32 51
by (3.7k points)
I parametri devono per forza essere passati mediante l'utilizzo dei registro $a... oppure possiamo usare qualsiasi registro a noi comodo?
andrea.sterbini (207920 points)
750 1267 2373
by (208k points)
Perchè non usare i registri standard? Aiutano la leggibilità del codice.
Che fatica aggiuntiva fa l'usare $a0..$a3 e $v0 $v1? Qualche move in più?
andrea.sterbini (207920 points)
750 1267 2373
by (208k points)

Forse ho capito il punto:

  1. non vorrei che usaste il vettore staticamente, quindi va bene che vengano passati o l'indirizzo del vettore e un offset/indice, oppure usare il vettore per puntatori
  2. potete usare registri diversi da $a0 e $a1 e $v0 che sono impegnati normalmente nelle syscall
maulo (400 points)
1 2 10
by (400 points)

Il file di output è strutturato in modo che sia

....espressioni....
(risultato)\n
\n

oppure

....espressioni....
(risultato)\n

?

Il mio PC vede i file di test che ho salvato come nel primo caso:

screen

andrea.sterbini (207920 points)
750 1267 2373
by (208k points)
Credo che i file di test di output finiscano con 2 \n, ma visto che uso la diff senza controllare l'accapo finale non dovrebbe essere un problema