Sunteți pe pagina 1din 6

4.

Instruciuni aritmetice

Instruciunile aritmetice sunt cuprinse n Tabelul 3. Pentru fiecare dintre ele se


specific dac poate ntoarce sau nu excepie de overflow, modul de realizare al
operaiei, formatul i cte un exemplu.

Operaia
Instruciune Tip Format Exemplu
efectuat
add rd, rs, rt Cu semn, cu rd rs + rt R add $t1, $t2, $t3
depire
addu rd, rs, rt Fr semn, fr rd rs + rt R addu $t1, $t2, $t3
depire
addi rt, rs, imm Cu semn, cu rt rs + imm I addi $t1, $t2, 1
depire
addiu rt, rs, imm Far semn, fr rt rs + imm I addiu $t1, $t2, 1
depire
sub rd, rs, rt Cu semn, cu rd rs - rt R sub $t1, $t2, $t3
depire
subu rd, rs, rt Fr semn, fr rd rs - rt R subu $t1, $t2, $t3
depire
mult rs, rt Cu semn, fr HI,LO rs * rt R mult $t1, $t2
depire
multu rs, rt Fr semn, fr HI,LO rs * rt R multu $t1, $t2
depire
div rs, rt Cu semn, cu LO rs / rt R div $t1, $t2
depire HI rs % rt
divu rs, rt Fr semn, fr LO rs / rt R divu $t1, $t2
depire HI rs % rt
Tabelul 3. Instruciuni aritmetice

Operaia
Pseudoinstruciune Tip Exemplu
efectuat
abs rd, rs Cu semn rd |rs| abs $t1, $t2
neg rd, rs InstruciCu depire rd
Abre - rs Opera neg $t1, $t2
Exem
negu rd, rs une Fr depire rd - rsia
vieri negu $t1, $t2
Format plu
add rd, rs, imm Cu semn, cu rd efectuat
rs + imm add $t1, $t2, 1
mthi rs dep
Move ireHI
To HI rs R mthi $t1
addu mfhi
rd, rs,rdimm Fr From
Move semn, HI
rdrdrsHI
+ imm R add $t1, $t2, $t1
mfhi 1
u
mtlo rs Move To LO LO rs R mtlo $t1
fr depire
mflo rd Move From LO rd LO R mflo $t1
add rd, imm Cu semn, cu rd rd + imm add $t1, 1
depire
add
addu rd, imm Fr semn, rd rd + imm u $t1, 1
fr depire
sub rd, rs, imm Cu semn, cu rd rs - imm sub $t1, $t2, 1
depire
sub
subu rd, rs, imm Fr semn, rd rs - imm u $t1, $t2, 1
fr depire
sub rd, imm Cu semn, cu rd rd - imm sub $t1, 1
depire
sub
subu rd, imm Fr semn, rd rd + imm u $t1, 1
fr depire
mulo rd, rs, rt Cu semn, cu rd rs * rt mulo $t1, $t2, $t3
depire
mulou rd, rs, rt Fr semn, rd rs * rt mulou $t1, $t2, $t3
fr depire
div rd, rs, rt Cu semn, cu rd rs / rt div $t1, $t2, $t3
depire
divu rd, rs, rt Fr semn, rd rs / rt div $t1, $t2, $t3
fr depire
rem rd, rs, rt Cu semn, cu rd rs % rt rem $t1, $t2, $t3
depire
remu rd, rs, rt Fr semn, rd rs % rt remu $t1, $t2, $t3
fr depire

Tabelul 5. Pseudoinstruciuni aritmetice

5. Instruciuni logice

1 ntrebri:
1) Care sunt operaiile logice pe bii?
2) Care sunt tabelele de adevr corespunztoare?

Instruciunile logice sunt cuprinse n Tabelul 6:


Operaia
Instruciune Format Exemplu
efectuat
and rd, rs, rt rd rs AND rt R and $t1, $t2, $t3
andi rt, rs, imm rt rs AND imm I andi $t1, $t2, 10
or rd, rs, rt rd rs OR rt R or $t1, $t2, $t3
ori rt, rs, imm rt rs OR imm I ori $t1, $t2, 10
xor rd, rs, rt rd rs XOR rt R xor $t1, $t2, $t3
xori rt,rs,imm rt rs XOR imm I xori $t1, $t2, 10

Pseudoinstruciune Operaia efectuat Exemplu


not rd, rs rd NOT rt not $t1, $t2
nor rd, rs, rt rd rs NOR rt nor $t1, $t2, $t3
and rd, rs, imm rd rs AND imm and $t1, $t2, 10
6. Instruciuni de shiftare

Instruciunile de shiftare sunt prezentate n tabelul urmtor:

Instruciune Operaia efectuat Format Exemplu


sll rd, rt, imm Shift Left Logical R sll $t1, $t2, 2

rd rt << imm

- se deplaseaz biii la stnga cu imm poziii;


- biii care ies din word prin stnga se pierd;
- locurile goale ramase in dreapta se
completeaz cu 0.
srl rd, rt, imm Shift Right Logical R srl $t1, $t2, 2

rd rt >> imm

- se deplaseaz biii la dreapta cu imm poziii;


- biii care ies din word prin dreapta se pierd;
- locurile goale ramase in stnga se
completeaz cu 0.
sra rd, rt, imm Shift Right Arithmetic R sra $t1, $t2, 2

rd rt >> imm

- se deplaseaz biii la dreapta cu imm poziii;


- biii care ies din word prin dreapta se pierd;
- locurile goale ramase in stnga se
completeaz cu 0, cu excepia bitului de
semn, care se pstreaz.
sllv rd, rt, rs Shift Left Logical Variable R sllv $t1, $t2, $t3
rd rt << rs
srlv rd, rt, rs Shift Right Logical Variable R srlv $t1, $t2, $t3
rd rt >> rs
srav rd, rt, rs Shift Right Arithmetic Variable R srav $t1, $t2, $t3
rd rt >> rs

Tabelul 8. Instruciuni de shiftare


7. Pseudoinstruciuni de rotaie

Pseudoistruciunile de rotaie sunt prezentate n tabelul urmtor:

Instruciune Operaia efectuat Exemplu


rol rd, rt, rs Rotation On Left rol $t2, $t1, $t0
- se pune n rd configuraia de bii din rt
deplasat spre stnga cu nr. de bii din rs, a..
biii care ies din word spre stnga sunt
introdui n aceeai ordine n locul gol creat n
dreapta.

ror rd, rt, rs Rotation On Right ror $t2, $t1, $t0


- se pune n rd configuraia de bii din rt
deplasat spre dreapta cu nr. de bii din rs, a..
biii care ies din word spre dreapta sunt
introdui n aceeai ordine n locul gol creat n
stnga.

Tabelul 9. Instruciuni de shiftare