Vai al contenuto

Primario: Sky Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Secondario: Sky Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Sfondo: Blank Waves Squares Notes Sharp Wood Rockface Leather Honey Vertical Triangles
Corsi di Laurea










ROX @ Unisa - Forum degli studenti di Ingegneria utilizza i cookie. Se prosegui la navigazione accetti il loro uso.    Accetto l'uso dei cookie
-->
Foto

Prove d'esame Giugno/Luglio/Settembre 2008


  • Effettua l'accesso per rispondere
Questa discussione ha avuto 12 risposta/e

#1
goodhelp88

goodhelp88

    Advanced Member

  • Utente
  • StellaStellaStella
  • 308 Messaggi:
per favore qualcuno potrebbe dirmi dove trovo lo svolgimento della prova di llap di luglio 2008, idem per quella di giugno e di settembre?


Ci sono 2 cose infinite nell'universo: l'universo e la stupidità umana, e della prima non ne sono sicuro. (Albert Einstein)

#2
aRbok

aRbok

    Advanced Member

  • Utente
  • StellaStellaStella
  • 1517 Messaggi:
Le prove d'esame dovrebbero essere pubblicate su adinf nella sezione LLAP.
Non ho controllato ma se non ci sono su adinf allora vuol dire che non si possono trovare.

Puoi esercitarti inventandoti i programmi in C e tradurteli da solo in assembler.

Orientativamente ricordo che l'anno scorso a Giugno uscì un merge tra due vettori in un vettore globale, a luglio uscì la malloc ma non ricordo poi le altre cose. :D
Fai ciò che vuoi : sarà tutta la Legge. Amore è la Legge, Amore sotto la Volontà.

#3
goodhelp88

goodhelp88

    Advanced Member

  • Utente
  • StellaStellaStella
  • 308 Messaggi:
raga le tracce le ho trovate, quello che mi serve è lo svolgimento
Ci sono 2 cose infinite nell'universo: l'universo e la stupidità umana, e della prima non ne sono sicuro. (Albert Einstein)

#4
aRbok

aRbok

    Advanced Member

  • Utente
  • StellaStellaStella
  • 1517 Messaggi:
Se non stava insieme alla traccia vuol dire che non c'è....
Te lo devi fare tu...
Tanto te ne accorgi sei sbagli :D :D :D

O al limite puoi sperare che qualcuno che le abbia già svolte sia disponibile a postarle :D :D :D
Fai ciò che vuoi : sarà tutta la Legge. Amore è la Legge, Amore sotto la Volontà.

#5
Stabber

Stabber

    Advanced Member

  • Utente
  • StellaStellaStella
  • 170 Messaggi:
qualcuno ha idea di come si fa la malloc e come si passa il riferimento al vettore nella traccia di Luglio ?
Il comunismo non è mai andato al potere in un paese che non fosse smembrato dalla guerra o dalla corruzione, o da entrambe. (John Fitzgerald Kennedy)

#6
girolamo

girolamo

    Advanced Member

  • Utente
  • StellaStellaStella
  • 148 Messaggi:
Potete postare la traccia di settembre ke nn riesco a trovarla!
Grazie :ciao:

#7
girolamo

girolamo

    Advanced Member

  • Utente
  • StellaStellaStella
  • 148 Messaggi:
l'ho trovata!!! :D :D :D

#8
WorldChallenge

WorldChallenge

    Advanced Member

  • Utente
  • StellaStellaStella
  • 75 Messaggi:
Qualcuno saprebbe dirmi dove e' sbagliato questo codice? :beg:

File allegato



#9
HDM

HDM

    Advanced Member

  • Utente
  • StellaStellaStella
  • 405 Messaggi:
Al momento non ho una soluzione pronta di questa traccia, cmq ci ho dato un'occhiata e ho subito notato questo:

All'inizio proprio del programma hai scritto:
.globl main
e poi dopo
main: 

La scrittura corretta è
.globl __start
__start:
dopo questo puoi iniziare a fare il prologo.

Secondo errore che ho notato:
Nel prologo quando vai ad allocare spazio in memoria, hai fatto:
#alloco lo spazio per 15+ fp+ ra valori= 17 . 17 x 4=68
addi $sp, $sp, -68

sw $s0, 64($sp) #$s0--->v1
sw $s1, 60($sp) #$s1--->v2
sw $s2, 56($sp) #$s2--->v3
sw $s3, 52($sp) #$s3--->r1
sw $s4, 48($sp) #$s4--->r2
sw $s5, 44($sp) #$s5--->r3
sw $fp, 40($sp)
addi $fp, $sp, 68

Allora, del primo vettore ti serve solo la testa, visto che dopo lo allochi con la malloc, e quindi sono 4 byte, poi te ne servono 20 per ognuno degli altri due vettori e siamo a 44byte.
Ora devi allocare spazio per r1, r2, r3, i ed fp sono 5 quindi altri 20 byte ed arriviamo a 64byte.
Il codice giusto è questo:
addi $sp, $sp, -64

sw $s0, 64($sp) #$s0--->v1
sw $s1, 60($sp) #$s1--->v2[5]
sw $s2, 40($sp) #$s2--->v3[5]
sw $s3, 20($sp) #$s3--->r1
sw $s4, 16($sp) #$s4--->r2
sw $s5, 12($sp) #$s5--->r3
sw $s6, 8($sp) #$s6--->i
sw $fp, 4($sp)
addi $fp, $sp, 64

Anche se in questo caso la maxdim non va gestita in questo modo, dovrebbe essere una variabile globale, definita tramite
maxdim: .word 5
nell'area dei dati globali.
Immagine inviata

#10
WorldChallenge

WorldChallenge

    Advanced Member

  • Utente
  • StellaStellaStella
  • 75 Messaggi:
Grazie mille HDM!

cmq a me i programmi non partono mettendo
.globl __start
__start:

per questo uso l'altra notazione...

Inoltre in questo caso non c'è bisogno di memorizzare anche il return address ra come viene fatto negli altri esami, tipo la traccia di giugno?

#11
HDM

HDM

    Advanced Member

  • Utente
  • StellaStellaStella
  • 405 Messaggi:

Grazie mille HDM!

cmq a me i programmi non partono mettendo

.globl __start
__start:

per questo uso l'altra notazione...

Inoltre in questo caso non c'è bisogno di memorizzare anche il return address ra come viene fatto negli altri esami, tipo la traccia di giugno?

non partono?? O.o
Ma sei sicuro di aver impostato bene il PcSpim?
c'è un thread che parla di come configura il PcSpim, eccolo: http://www.r0x.it/vi....php?f=13&t=802

Con quella notazione che usi potresti avere qualche problema sui pc del laboratorio, anche sul mio non partiva proprio il tuo programma.

Comunque per quanto riguarda il registro del Return Address, me lo sono dimenticato! XD
è buona norma metterlo sempre nel prologo, inoltre mi sono ricordato che è convenzione allocare spazio prima per fp ed ra e poi per le altre variabili.
Immagine inviata

#12
WorldChallenge

WorldChallenge

    Advanced Member

  • Utente
  • StellaStellaStella
  • 75 Messaggi:
Non lo so, ho provato anche con le impostazioni scritte su r0x ma non va proprio niente...:S
Cmq ti ringrazio HDM, mi hai chiarito moltissimi dubbi! :notworthy:

#13
Stabber

Stabber

    Advanced Member

  • Utente
  • StellaStellaStella
  • 170 Messaggi:
Ecco la traccia con la soluzione svolta da me del compito del 11-09-08

File allegato


Il comunismo non è mai andato al potere in un paese che non fosse smembrato dalla guerra o dalla corruzione, o da entrambe. (John Fitzgerald Kennedy)




Leggono questa discussione 0 utenti

0 utenti, 0 ospiti, 0 utenti anonimi