Converte un numero decimale nel formato binario IEEE 754

Autore: John Pratt
Data Della Creazione: 15 Febbraio 2021
Data Di Aggiornamento: 1 Luglio 2024
Anonim
7.Conversión de un número decimal a Formato IEEE 754
Video: 7.Conversión de un número decimal a Formato IEEE 754

Contenuto

A differenza degli esseri umani, i computer non utilizzano il sistema dei numeri decimali. Usano un sistema numerico binario o binario con due possibili cifre, 0 e 1. Quindi i numeri sono scritti in modo molto diverso in IEEE 754 (uno standard dell'IEEE per rappresentare numeri binari con virgola mobile) rispetto al sistema decimale tradizionale che dobbiamo essere abituato. In questo articolo imparerai come scrivere un numero con precisione singola o doppia secondo IEEE 754. Per questo metodo devi sapere come convertire i numeri in forma binaria. Se non sai come farlo, puoi impararlo studiando l'articolo Conversione da binario a decimale.

Al passo

  1. Scegli la precisione singola o doppia. Quando si scrive un numero con precisione singola o doppia, i passaggi per una conversione corretta saranno gli stessi per entrambi. L'unico cambiamento avviene nella conversione dell'esponente e della mantissa.
    • Per prima cosa dobbiamo capire cosa significa precisione singola. Nella rappresentazione in virgola mobile, qualsiasi numero (0 o 1) è considerato un "bit". Pertanto, una singola precisione ha un totale di 32 bit suddivisi in tre diversi soggetti. Questi soggetti sono costituiti da un segno (1 bit), un esponente (8 bit) e una mantissa o frazione (23 bit).
    • La doppia precisione, d'altra parte, ha la stessa configurazione e le stesse tre parti della precisione singola: l'unica differenza è che sarà un numero più grande e più preciso. In questo caso il segno avrà 1 bit, l'esponente 11 bit e la mantissa 52 bit.
    • In questo esempio convertiremo il numero 85.125 in precisione singola secondo IEEE 754.
  2. Separare il numero prima e dopo il punto decimale. Prendi il numero che vuoi convertire e separalo in modo da rimanere con un numero intero e un numero decimale. In questo esempio, assumiamo il numero 85.125. Puoi separarlo nell'intero 85 e nel decimale 0,125.
  3. Converti l'intero numero in un numero binario. Questo diventa l'85 di 85.125, che diventerà 1010101 quando convertito in binario.
  4. Converti la parte decimale in un numero binario. Questo è 0,125 di 85,125, che diventa 0,001 in formato binario.
  5. Combina le due parti del numero che sono state convertite in numeri binari. Il numero 85 è binario ad esempio 1010101 e la parte decimale 0,125 è binario 0,001. Se li combini con un punto decimale, ottieni 1010101.001 come risposta finale.
  6. Converti il ​​numero binario in notazione scientifica binaria. È possibile convertire il numero in notazione scientifica binaria spostando il punto decimale a sinistra finché non si trova a destra del primo bit. Questi numeri sono normalizzati, il che significa che il bit iniziale sarà sempre 1. Per quanto riguarda l'esponente, il numero di volte in cui muovi il decimale è l'esponente nella notazione scientifica binaria.
    • Ricorda, spostare il decimale a sinistra produce un esponente positivo, mentre spostare il decimale a destra produce un esponente negativo.
    • Nel nostro esempio, devi spostare il decimale sei volte per portarlo a destra del primo bit. Il formato risultante diventa quindi 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Determina il segno del numero e visualizzalo in formato binario. Ora determinerai se il numero originale è positivo o negativo. Se il numero è positivo, scrivi quel bit come 0 e se è negativo come 1. Poiché il numero originale è 85,125 positivo, scrivi quel bit come 0. Questo è ora il primo bit dei 32 bit totali nella tua precisione singola rendering secondo IEEE 754.
    • Determina l'esponente in base alla precisione. C'è un bias fisso sia per la precisione singola che per quella doppia. Il bias esponente per la precisione singola è 127, il che significa che dobbiamo aggiungere l'esponente binario trovato in precedenza. Quindi l'esponente che utilizzerai è 127 + 6 = 133.
      • La doppia precisione, come suggerisce il nome, è più accurata e può contenere numeri più grandi. Da qui il bias dell'esponente 1023. Gli stessi passaggi usati per la precisione singola si applicano qui, quindi l'esponente che puoi usare per determinare la doppia precisione è 1029.
    • Converti l'esponente in binario. Dopo aver determinato l'esponente finale, è necessario convertirlo in binario in modo che possa essere utilizzato nella conversione IEEE 754. Nell'esempio, puoi convertire i 133 trovati nell'ultimo passaggio in 10000101.
    • Determina la mantissa. L'aspetto mantissa, o la terza parte della conversione IEEE 754, è il resto del numero dopo il decimale della notazione binaria scientifica. Devi solo omettere l'1 davanti e copiare la parte decimale del numero che viene moltiplicato per due. Non è richiesta alcuna conversione binaria! Nell'esempio, la mantissa diventa 010101001 di 01,01010100126{ displaystyle 01.010101001 * 2 ^ {6}}Infine, combina tre parti in un numero.
      • Infine, combini tutto ciò che abbiamo calcolato finora nella tua conversione. Il numero inizierà prima con uno 0 o 1 determinato nel passaggio 7 in base al segno. Nell'esempio inizi con uno 0.
      • Quindi hai l'esponente che hai determinato nel passaggio 9. Nell'esempio, l'esponente è 10000101.
      • Poi viene la mantissa, la terza e ultima parte della conversione. Lo hai dedotto in precedenza quando hai preso la parte decimale della conversione binaria. Nell'esempio, la mantissa è 010101001.
      • Infine, combini tutti questi numeri tra loro. L'ordine è segno-esponente-mantissa. Dopo aver collegato questi tre numeri binari, riempi il resto della mantissa con zeri.
      • Ad esempio, la soluzione è convertire 85.125 nel formato binario IEEE 754 0 10000101 01010100100000000000000.