Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-07-2005, 12:19   #1
Manugal
Senior Member
 
L'Avatar di Manugal
 
Iscritto dal: Jan 2001
Città: Villanova di Guidonia (RM)
Messaggi: 1079
[SPIM] Simulatore MIPS

Ciao a tutti!!!

Mi serve un aiuto sul codice assembler dello SPIM per un esame universitario. C'è qualcuno disposto a spiegarmi come si fa a passare più di quattro argomenti ad una funzione tramite lo stack pointer e a ritornare ad esempio altrettanti argomenti? Grazie.
Manugal è offline   Rispondi citando il messaggio o parte di esso
Old 14-07-2005, 16:57   #2
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
devi fare il push degli argomenti nello stack e il pop in ordine inverso.
siccome nei fantastici RISC (-__-') non esistono istruzioni di PUSH e POP, il push di un argomento consiste nel sottrarre il valore 4 allo stack pointer (se lo stack è allineato ai 4 byte) e mettere in memoria l'argomento di turno all'indirizzo puntato sempre dallo stack pointer; al contrario il pop consiste nel prelevare il valore puntato da $SP in un registro e addizionare 4 a $SP. in genere gli argomenti vengono spinti da destra a sinistra, cioè dall'ultimo al primo, in modo tale che quando vai a prelevarli te li ritrovi in ordine (quelli di sinistra nelle locazioni più basse).
tieni anche presente che potrebbe essere necessario mettere nello stack anche il return address, e se questo avviene in genere lo si mette *dopo* gli argomenti, cioè nelle locazioni immediatamente inferiori, quindi una volta entrato nella funzione non puoi fare direttamente il pop degli argomenti: devi prelevarli manualmente quando ti servono e fare il cleanup dello stack tutto alla fine.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2005, 18:59   #3
Manugal
Senior Member
 
L'Avatar di Manugal
 
Iscritto dal: Jan 2001
Città: Villanova di Guidonia (RM)
Messaggi: 1079
Grazie ma gli argomenti che passo (mettiamo il caso siano più di 4) in quali registri devo metterli dato che per gli argomenti ho solo $a0,$a1,$a2,$a3? E per ritornare più di due valori dato che ho solo $v1 e $v2 come posso fare?
Manugal è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2005, 19:53   #4
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
come ti ho detto sopra, no? se non hai abbastanza registri li metti nello stack; l'operazione di aggiungere un valore allo stack si chiama PUSH (gli Intel hanno un'istruzione apposita, mentre nei PPC devi maneggiare $SP a mano con ADD e SUB, ricordando che lo stack cresce verso il basso), mentre la rimozione si chiama POP.
71104 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
OpenAI accusata di plagio dai migliori m...
Altro attacco hacker dell'IA: gli agenti...
Stiamo davvero perdendo il controllo del...
Microsoft perde un pilastro: Frank Shaw ...
Diablo V annunciato a sorpresa: il colpo...
Meno di 5 euro per il 5G: l'offerta Kena...
World of Warcraft: Forever è il Classic+...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Speciale TV in offerta su Amazon: Hisens...
Non c'è pace per Trezor: 347.000 e-mail ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:47.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v