vuoi
o PayPal
tutte le volte che vuoi
Pseudo Istruzioni:
- blt $t0, $t3, Lable
- se t0 < t3 allora SALTO
slt $at, $t0, $t3
bne $at, $zero, Lable
- se $t0 < $t3 -> $at = 1
- se $at ≠ 0 allora SALTO
- bgt $t0, $t3, Lable
- se t0 > t3 allora SALTO
slt $at, $t3, $t0
bne $at, $zero, Lable
- se $t3 < t0 -> $at = 1
- se $at ≠ 0 -> allora SALTO
- ble $t0, $t3, Lable
- se t0 <= t3 allora SALTO
slt $at, $t3, $t0
beq $at, $zero, Lable
- se $t3 < t0 -> $at = 1
- se $at = 0 -> SALTO
- bge $t0, $t3, Lable
- se t0 >= t3 allora SALTO
slt $at, $t0, $t3
beq $at, $zero, lable
- se t0 < t3 -> $at = 1
- se $at = 0 -> SALTO
GESTIONE OVERFLOW:
li $t3, 0xf0000000
li $t2, 0xf0000000
addo $t0, $t3, $t2
xor $t3, $t3, $t2
se $t3 ^ $t2 hanno segno uguale (guardo solo l’ultimo bit)
quello del segno
$t2$t300100111$t3 è positivo
$t3 è negativo
slt $t3, $t3, $zero
se $t3 è positivo, risultato maggiore di zero
slt -> $t3=0
se $t3 e t2 hanno segno diversot3 è negativo, risultato minore di zero
slt -> $t3=1
bne $t3, $zero, NO_OV
xor $t3, $t0, $t3 (opp $t2 è indifferente)
slt $t3, $t3, $zero
bne $t3, $zero, OV
VIRGOLA MOBILE e SUB.NUMBER:
PER RIEMPIRE IL BUCO FRA LO ZERO e 2-126 VENGONO INTRODOTTI I SUBNUMERI. DOVE POO HO PIÙ L'OVBISSO DEL 1 IMPLICTO PRIMA DELLA VIRGOLA.
Nmin = + (0 | 0, 000...003) • 2-127
1 • 2-23 • 2-126 = 2-149
OSSERVA:
PIÙ RAPPRESENTO NUMERI PICCOLI PIÙ LE CIFRESIGNIFICATIVE NELLA MANTISSA SARANNO POCHE
AUMENTO L’INTERVALLO MA DIMINUISCOLA PRECISIONE DI RAPPRESENTAZIONE
bne:
- bne $t0, $t1, label
- $t0-$t1=0 → PONIAMO L'USCITA PAR A 0
Risult0Risult1Risult2Risult3