Type de données : REAL, LREAL
Les types de données REAL
et LREAL
sont des types à virgule flottante selon IEEE 754. Les types à virgule flottante sont nécessaires lors de l'utilisation de nombres décimaux et de nombres à virgule flottante en représentation par points ou en représentation exponentielle.
Type de données | Le plus petit nombre en termes absolus | Le plus grand nombre en termes de valeur absolue | espace de stockage |
---|---|---|---|
| 1.0E-44 | 3.402823E+38 | 32 bits |
| 4.94065645841247E-324 | 1.7976931348623157E+308 | 64 bits |
PROGRAM PLC_PRG VAR rMax: REAL := 3.402823E+38; // Largest number rPosMin : REAL := 1.0E-44; // Smallest positve number rNegMax: REAL := -1.0E-44; // Largest negative number rMin: REAL := -3.402823E+38; // Smallest number lrMax: LREAL := 1.7976931348623157E+308; // Largest number lrPosMin : LREAL := 4.94065645841247E-324; // Smallest positve number lNegMax: LREAL := -4.94065645841247E-324; // Largest negative number lrMin: LREAL := -1.7976931348623157E+308; // Smallest number END_VAR
Important
Prise en charge des types de données LREAL
dépend de l'appareil cible utilisé. Veuillez consulter la documentation associée pour voir si le type 64 bits LREAL
lors de la compilation de l'application dans REAL
est converti ou comme LREAL
conservé. En effet, des pertes d'informations peuvent se produire lors de la conversion.
Important
Si la valeur de REAL
/LREAL
-Le nombre est en dehors de la plage de valeurs de l'entier, dans une conversion de type de données de REAL
ou LREAL
après SINT
, USINT
, INT
, UINT
, DINT
, UDINT
, LINT
ou ULINT
renvoyé un résultat indéfini. Le résultat dépend du système cible. Une erreur d'exception est également possible ! Afin d'obtenir un code indépendant du système cible, l'application doit intercepter les violations de plage de valeurs.
Si la REAL
/LREAL
-Le nombre se situe dans la plage de valeurs du type de données entier, la conversion fonctionne de la même manière sur tous les systèmes.