|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Bannato
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2683
|
qualche piccolo chiarimento sull'assemblea per favore
Salve,
all'università nel corso di Architetture degli elaboratori II stiamo studiando l'assembler del processore MIPS di tipo RISC simulato grazie allo SPIM....avrei bisogno di qualche piccolo chiarimento... Ma si tratta del processorre dei PowerPc o mi sbaglio?!?...possibile che un'architettura di tipo RISC viene usata per computer di questo tipo?!?! Gli altri dubbi li ho su un piccolo programmino anche se in asm nulla sembra essere piccolo .data # è una direttiva che memorizza ciò che segue nell'area data fino a una nuova direttiva chiedi_input: .asciiz "Inserisci un intero, il programma calcolerà se è minore o uguale a 6\n" minoreuguale: .asciiz "Il numero inserito è minore o uguale a 6" maggiore: .asciiz "Il numero inserito è maggiore di 6" numero: .word 6 # Metto nel blocco di memoria puntato dall'etichetta numero il valore 6 .text # è una direttiva che memorizza nell'area testo, qui sono contenute le istruzioni .globl main # è una direttiva che dice che l'etichetta main è di tipo globale quindi visibile all'esterno main: la $a0, chiedi_input # Carica in $a0 l'indirizzo di memoria puntato dall'etichetta chiedi_input li $v0, 4 # Carica in modo immediato il valore 4 nel registro $v0 usato per contenere i parametri delle syscall syscall # Fa la syscall considerando il parametro 4 precedentemente caricato e STAMPA LA STRINGA li $v0, 5 # Carica in modo immediato il valore 5 in $v0 per leggere l'input dalla tastiera syscall # Legge il valore inserito dall'utente e va a sovrascrivere con esso $v0 move $t0, $v0 # $v0 è un registro ad uso specifico quindi per comodità e chiarezza sposto il suo contenuto in $t0 che è ad uso generale lw $t1, numero # Carico il valore 6 puntato dall'eticheta numero in $t1 ble $t0, $t1, se_minore # Se il contenuto di $t0 è minore di quello di $t1 allora salta al codice puntato dall'etichetta se_minore la $a0, maggiore li $v0, 4 syscall j the_end # Nel caso non avesse fatto il salto stampa il testo puntato dall'etichetta maggiore e termina se_minore: la $a0, minoreuguale li $v0, 4 syscall # Stampa il testo puntato dall'etichetta minoreuguale e termina j the_end the_end: li $v0, 10 syscall # Termina il programma !!! DUBBI: 1) Quando faccio la $a0, chiede_input li $v0, 4 syscall il computer carica l'indirizzo di memoria puntato dall'etichetta chiede_input nel registro $a0 e poi grazie alla syscall attuata con il parametro 4 stampa il valore contenuto in quell'indirizzo di memoria...vero? Non carica il contenuto dell'indirizzo di memoria puntato dall'etichetta nel registro....ho capito bene? 2) Quando invece leggo una stringa in input e faccio: li $v0, 5 syscall il computer attua la syscall con il parametro 5 e legge la stringa in input che poi viene messa nel registro $v0...quindi $v0 viene sovrascritto dal valore inserito dall'utente e non ci sta più dentro il valore 5....giusto? Grazie |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Il PowerPC è Risc ma non mi sembra sia compatibile con MIPS...
MIPS è una serie storica di microprocessori risc a 32 e 64 bit... Gli utlimi a 32 bit credo che vangano utilizzati come microcontrollori, mentre quelli a 64 bit sulle workstation SGI... |
|
|
|
|
|
#3 |
|
Bannato
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2683
|
grazie meille...microcontrllori intendi cose tipo i PIC ? per quanto riguarda il programmino mi sai dire se ho capito bene ?
CMQ grazie mille |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Sì..di quel genere...
Purtroppo non conosco l'assembler MIPS... |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Se non sbaglio viene usato l'istruction set MIPS viene usato anche da alcune CPU per PDA...
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
|
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo |
|
|
|
|
|
#7 | ||
|
Senior Member
Iscritto dal: Jul 2002
Città: Milano
Messaggi: 19148
|
mitico MIPS
quando ho qualche minuto edito e rispondo alle tue domande. non lo vedo da 3 anni ma ero abbastanza bravo all'epoca Quote:
Quote:
Ultima modifica di recoil : 20-03-2004 alle 12:35. |
||
|
|
|
|
|
#8 |
|
Bannato
Iscritto dal: Mar 2004
Città: Roma
Messaggi: 2683
|
grazie ragazzi mi commuove tutta la vostra disponibilità
|
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3739
|
Quote:
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:24.



















