Domanda

Capisco qualsiasi frazione per essere un quoziente di interi che non è0 , ma dopo aver trovato il termine "float" in vari linguaggi di programmazione (come JavaScript), fraintendita perché è persino necessario e non diciamo una frazione invece.

Qual è la differenza tra una frazione e un galleggiante?

È stato utile?

Soluzione

I computer di solito si occupano di numeri a virgola mobile piuttosto che con le frazioni. La differenza principale è che i numeri a punti flottanti hanno una precisione limitata, ma sono molto più veloci da eseguire aritmetiche con (e sono l'unico tipo di numeri non intesi supportati in modo nativo nell'hardware).

numeri a virgola mobile sono memorizzati in "Notazione scientifica" con una precisione fissa , che dipende dal tipo di dati. Parlando approssimativamente, sono memorizzati nella forma $ \ alfa \ clot 2 ^ \ beta $ , dove $ 1 \ Leq \ Alpha <2 $ , $ \ beta $ è un numero intero ed entrambi sono memorizzati in un numero fisso di bit. Questo limita la precisione di $ \ alfa $ e l'intervallo di $ \ beta $ : Se $ \ Alpha $ è memorizzato utilizzando $ a $ bit (come $ 1. X_1 \ LDOTS X_A $ ) Quindi esprime sempre una frazione il cui denominatore è $ 2 ^ a $ e se $ \ beta $ è memorizzato utilizzando $ B $ bit quindi è sempre nell'intervallo $ - 2 ^ {B-1}, \ LDOTS, 2 ^ {B-1} -1 $ .

A causa della limitata accuratezza dei numeri a punti flottanti, l'aritmetica su questi numeri è solo approssimativa, portando a inesattezze numeriche. Quando si sviluppano algoritmi, devi tenerlo in mente. In realtà c'è un'intera area in informatica, analisi numerica , devota a tali problemi. .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a cs.stackexchange
scroll top