Supporto di numeri interi più grandi di integer32

Tradotto automaticamente da Deepl

Sebbene i Reali siano noti per la loro imprecisione, sono precisi al 100% anche per i numeri molto grandi, a condizione che non utilizzino la virgola decimale (=integrali).

I numeri fino a 53 bit, o più esattamente [-(2^53)+1, (2^53)-1], cioè un intervallo compreso tra -9.007.199.254.740.992 e 9.007.199.254.740.992, saranno rappresentati esattamente.

Ulteriori informazioni sui Reali

Se si consulta la definizione di virgola mobile binaria a doppia precisione su Wikipedia, si trova quanto segue in merito alla suddivisione e alla precisione delle cifre:

“La precisione del significante di 53 bit fornisce da 15 a 17 cifre decimali significative (2-53 ≈ 1,11 × 10-16). Se una stringa decimale con al massimo 15 cifre significative viene convertita in una rappresentazione in doppia precisione IEEE 754 e poi riconvertita in una stringa decimale con lo stesso numero di cifre, il risultato finale dovrebbe corrispondere alla stringa originale. Se un numero in doppia precisione IEEE 754 viene convertito in una stringa decimale con almeno 17 cifre significative e poi riconvertito in una rappresentazione in doppia precisione, il risultato finale deve corrispondere al numero originale”.

Convertire in stringa

Mentre per molti anni è stato possibile eseguire calcoli su numeri grandi con il tipo Real, la conversione da o verso il testo era limitata all’uso della notazione scientifica a 12 cifre, con conseguente perdita di precisione.

Con 4D v19 R6, abbiamo migliorato la precisione e la conversione di un numero reale (che presenta un numero intero) in un testo.

Il miglioramento della conversione in stringa riguarda il comando String() e i comandi JSON e XML che restituiscono numeri in forma di stringa.

Editor di codice

Ad esempio, è ora possibile digitare nell’editor di codice:

$r:=2147483647000000
e il numero rimarrà così com’è, invece di essere formattato come:
$r:=2.147483647e+15
Buona codifica!

Vanessa Talbot
- Product Owner - Vanessa Talbot è entrata a far parte del team di 4D Program nel giugno 2014. In qualità di Product Owner, è incaricata di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo è anche quello di assicurarsi che l'implementazione della funzionalità fornita soddisfi le esigenze del cliente. Ha lavorato sulla maggior parte delle nuove funzionalità di multi-threading preemptive e anche su un argomento molto complesso: la nuova architettura per le applicazioni con motore. Vanessa si è laureata presso Telecom Saint-Etienne. Ha iniziato la sua carriera presso il Criminal Research Institute come sviluppatrice per il dipartimento audiovisivo. Ha lavorato anche nei settori dei media e della medicina come esperta di supporto tecnico, produzione e documentazione di nuove funzionalità.