Chiarimenti su complemento a due e sottrazione in binario
Ragazzi scusate vorrei dei chiarimenti su queste due cose:
1)Non mi torna l'intervallo di rappresentabilita del complemento a due.Se rispetto al modulo e segno ( $ -(2^(N-1)-1)< x <(2^(N-1)-1) $ ),ho una sola rappresentazione dello 0(quella positiva),dovrei perdere un valore nei negativi quindi la rappresentazione non dovrebbe essere cosi...
$ -(2^(N-1)-1)< x <(2^(N-1)) $ ?? --->non capisco xché é il contrario??
2)La differenza tra due numeri binari..
10011-
01111=
--------
0100 cosi viene??
Io ho come risultato 100 senza lo zero finale xchè??Va bene che è zero,ma se la rappresentazione é su 5 bit...
Grazie mille
1)Non mi torna l'intervallo di rappresentabilita del complemento a due.Se rispetto al modulo e segno ( $ -(2^(N-1)-1)< x <(2^(N-1)-1) $ ),ho una sola rappresentazione dello 0(quella positiva),dovrei perdere un valore nei negativi quindi la rappresentazione non dovrebbe essere cosi...
$ -(2^(N-1)-1)< x <(2^(N-1)) $ ?? --->non capisco xché é il contrario??
2)La differenza tra due numeri binari..
10011-
01111=
--------
0100 cosi viene??
Io ho come risultato 100 senza lo zero finale xchè??Va bene che è zero,ma se la rappresentazione é su 5 bit...
Grazie mille

Risposte
Prima domanda:
che io sappia nel complemendo a due se il numero binario è positivo, si fa come nel modulo e segno
Per la seconda domanda a me esce 00100
ciao
che io sappia nel complemendo a due se il numero binario è positivo, si fa come nel modulo e segno
Per la seconda domanda a me esce 00100
ciao

"Shocker":
Prima domanda:
che io sappia nel complemendo a due se il numero binario è positivo, si fa come nel modulo e segno
Si hai ragione,ma non ho chiesto questo..
"Shocker":
Per la seconda domanda a me esce 00100
ciao
si si ,ho sbagliato a scrivere,cmq nel risultato mette 100 e non so se sia la stessa cosa..
"Gianni91":
Ragazzi scusate vorrei dei chiarimenti su queste due cose:
1)Non mi torna l'intervallo di rappresentabilita del complemento a due.Se rispetto al modulo e segno ( $ -(2^(N-1)-1)< x <(2^(N-1)-1) $ ),ho una sola rappresentazione dello 0(quella positiva),dovrei perdere un valore nei negativi quindi la rappresentazione non dovrebbe essere cosi...
$ -(2^(N-1)-1)< x <(2^(N-1)) $ ?? --->non capisco xché é il contrario??
scusa, ma mi sembra che ti sei già risposto da solo, solo che hai sbagliato in un punto:
ho una sola rappresentazione dello 0(quella positiva)
dovrei perdere un valore nei negativi quindi la rappresentazione non dovrebbe essere cosi...
In questo senso, perdi sì un valore negativo, su 5 bit cioè $10000$, ma ne aggiungi un valore negativo che rappresenta un altro numero nel range.
cioè:
$ -(2^(N-1))< x <(2^(N-1)-1) $
se non ti è chiaro ti consiglio di guardare la rappresentazione binaria con il valore decimale in questa tabella a sinistra.
2)La differenza tra due numeri binari..
10011-
01111=
--------
0100 cosi viene??
Io ho come risultato 100 senza lo zero finale xchè??Va bene che è zero,ma se la rappresentazione é su 5 bit...
Grazie mille
sottrazione in che rappresentazione?
"hamming_burst":
se non ti è chiaro ti consiglio di guardare la rappresentazione binaria con il valore decimale in questa tabella a sinistra.
scusami intendi quella a destra con la striscia blu?? A sinistra non trovo niente..

"hamming_burst":
sottrazione in che rappresentazione?
Non so ,la sottrazione mi serviva,per il calcolo dell'esponente in virgola mobile data dalla formula
$ e=E-(2^(k-1)-1) $ con E=5 bit..
$ e=E-(2^(k-1)-1)=10011-(+01111)=+100 $
probabilmenente c'è qualcosa che non ho capito..

"Gianni91":
2)La differenza tra due numeri binari..
10011-
01111=
--------
0100 cosi viene??
Io ho come risultato 100 senza lo zero finale xchè??Va bene che è zero,ma se la rappresentazione é su 5 bit...
Grazie mille
Lo zero finale è quello a sinistra ?
Se così, è chiaro che lo puoi omettere. E' come nei decimali, scrivere 07022 e 7022 è la stessa cosa.
"Quinzio":
Lo zero finale è quello a sinistra ?
Se così, è chiaro che lo puoi omettere. E' come nei decimali, scrivere 07022 e 7022 è la stessa cosa.
Si sicuramente essendo 0,ma quello che volevo capire era che se la sottrazione é tra due numeri a 5 bit,il risultato sarà sempre su 5 bit..giusto??
Se ho,invece una sottrazione tra un numero su 5bit e uno a 3,il risultato che ottengo sara su 5 bit??
"Gianni91":
Si sicuramente essendo 0,ma quello che volevo capire era che se la sottrazione é tra due numeri a 5 bit,il risultato sarà sempre su 5 bit..giusto??
in questo caso ci può essere underflow...
In complemento a 2 c'è una semplice regoletta che puoi ricordarti, essendoci solo la somma:
- 1.... + 0.... = 10.... carryout non c'è overflow
- 1.... + 1.... = 10.... underflow
- 0.... + 0.... = 11.... overflow
c'era una tabellina ma non la ritrovo più...
In modulo e segno il principio è uguale ricordandoti che 001 + 100 = 01 - 00
Se ho,invece una sottrazione tra un numero su 5bit e uno a 3,il risultato che ottengo sara su 5 bit??
discorso identico di sopra.
se su 5 bit hai un numero negativo e sottrai un altro numero positivo hai un underflow.
se hai ancora dubbi chiedi pure

PS: per le operazioni FP controlla nei vecchi post in questa sezione ricordo di aver risposto a delle domande simili

Scusami a lezione abbiamo solo trattato l'overflow,quindi potresti spiegarmi in cosa consististe l'underflow,nelle operazioni in binario??
Grazie
XD
Grazie
XD
"Gianni91":
Scusami a lezione abbiamo solo trattato l'overflow,quindi potresti spiegarmi in cosa consististe l'underflow,nelle operazioni in binario??
Grazie
XD
sì, io te lo ho chiamato underflow, ma per essere precisi si tratta sempre di overflow ma in senso opposto.
Di solito ci si riferische ad overflow come passare da un valore positivo ad uno negativo per via della rappresentazione modulare dei numeri (il riporto/carryout), questo si chiama positive overflow.
Quello che mi riferisco io è il negative overflow, cioè sottraendo "troppo" si passa ad un numero positivo. Sorry per la confusione, ho usato una terminologia non appropriata.
Invece l'underflow vero avviene in rappresentazione di numeri troppo piccoli in rapp FP che possono essere confusi con lo $0$
