Note
Per spostarci dall’insieme all’insieme , esistono diverse rappresentazione.
La più immediata è una rappresentazione a virgola fissa, dove si allocano alla parte decimale.
Quella meno immediata è a virgola mobile. Consideriamo come segno, come esponente e come mantissa, si ha che:
Da un punto di vista binario, nella virgola mobile a singola precisione, il MSB è il segno, i successivi sono l’esponente, e i restanti sono dedicati alla mantissa.
Per convertire in modulo 2 virgola mobile a singola precisione, si converte la pare decimale in binario, e poi la parte decimale in binario. A questo punto scriviamo in forma normale , quindi nel formato . La parte decimale della forma normale sarà la mantissa, mentre l’esponente sarà lo shift a sinistra, codificato in modulo segno (primo bit impostato ad per indicare shift a destra).
Casi particolari
Nel caso in cui , se allora il significato è , altrimenti è (Not-a-Number).
Nel caso in cui , se allora il significato è , altrimenti è indicato un numero denormalizzato, cioè dove:
Per eseguire la somma (o sottrazione), si procede con lo stesso metodo della somma nella notazione scientifica:
- Si uniformano gli esponenti
- Si esegue la somma delle mantisse
- Si normalizza il risultato
Errori
Il valore assoluto aumenta all’aumentare di , mentre l’errore relativo è approssimativamente costante.
Eccezioni
Lo standard IEEE754 definisce una serie di eccezzioni:
- Valore inesatto (rispetto al corrispondente matematico)
- Divisione per zero
- Operazione non valida
- Overflow
- Underflow
Circuito sommatore in virgola mobile
Note
Dati due numeri e codificati in floating point singola precisione, con componenti e .
Per prima cosa si sceglie il numero con esponente minore e si fa scorrere la sua mantissa a destra un numero di bit pari alla differenza dei due esponenti.
Poi si assegna all’esponente del risultato il maggiore tra gli esponenti degli operandi.
Poi si esegue l’operazione di somma tra le mantisse per determinare il valore ed il segno del risultato.
Infine, si normalizza il risultato.
Circuito completo




