|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Apr 2004
Città: La regione del Triplete
Messaggi: 5749
|
Istruzioni logiche MIPS
Ciao a tutti!
Sono alle prese con l'assembler MIPS (R2000) e ho un grosso problema con le istruzioni logiche di tipo SHIFT OR AND. In particolare, non riesco a capire a cosa servono in ambito pratico. Naturalmente so che si usano per compiere opwrazioni sui singoli bit come lo scalamento logico (SHIFT) o l'applicazione delle maschere che forzano i bit qa 0 o a 1 (AND e OR), però non so proprio a che servono in concreto. La seconda domanda è correlata alla prima e riguarda un pezzo di codice che devo commentare riga per riga sub1: move $v0, $zero beq $a1, $zero, esci andi $t0, $a1, 1 beq $zero, $t0, dopo add $t1, $zero, 1 ciclo: add $v0, $v0, $t1 beq $t1, $a1, esci addi $t1, $t1, 2 j ciclo dopo: addi $t1, $zero, 2 j ciclo esci: jr $ra In specifico con capisco a cher serve l'istruzione immediata andi $t0, $a1, 1 all'interno di questa procedura e non ho ben chiara la sua struttura. spero mi possiate rispondere perchè mi serve per proseguire lo studio Grazie
__________________
Trattative felicemente concluse con domienico120, xbax88 ed engiel, ottimi e seri utenti. |
|
|
|
|
|
#2 | ||
|
Senior Member
Iscritto dal: Jun 2002
Città: Firenze
Messaggi: 630
|
Quote:
Per esempio un registro a 8 bit contiene due numeri a 4 bit che devi sommare tra di loro. Io farei (pseudo-codice) Il registro è R1 = 0x38, devi fare 0x3 + 0x8 R2 = R1 SHIFTRIGHT 4 R1 = R1 AND 0xF R3 = R1 ADD R2 Quote:
In congiunzione con l'istruzione dopo significa: se nel primo bit di $a1 c'è ZERO, allora salta a DOPO.
__________________
---> Lombardp CSS Certified Expert (Master Level) at Experts-Exchange Proud user of LITHIUM forum : CPU technology Webmaster of SEVEN-SEGMENTS : Elettronica per modellismo |
||
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:08.



















