Skip to main content

Tipo di dati: REAL, LREAL

I tipi di dati REAL e LREAL sono tipi a virgola mobile secondo IEEE 754. I tipi a virgola mobile sono necessari quando si utilizzano numeri decimali e numeri a virgola mobile in notazione decimale o esponenziale.

Tabella 20. Sistema di destinazione

Tipo di dati

Numero di valore più piccolo

Numero di valore più grande

Memoria

REAL

1.0E-44

3.402823E+38

32 bit

LREAL

4.94065645841247E-324

1.7976931348623157E+308

64 bit



Esempio 206. Esempio
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


Importante

Supporto per il LREAL il tipo di dati dipende dal dispositivo di destinazione in uso. Vedere la rispettiva documentazione per sapere se il tipo a 64 bit o meno LREAL viene convertito in REAL o rimane come LREAL durante la compilazione della domanda. La conversione può comportare la perdita di informazioni.

Importante

Se il valore del REAL/LREAL numero è al di fuori dell'intervallo di valori dell'intero, quindi viene restituito un risultato non definito da una conversione del tipo di dati da REAL o LREAL a SINT, USINT, INT, UINT, DINT, UDINT, LINT, o ULINT. Il risultato dipende dal sistema di destinazione. È anche possibile un errore di eccezione. Per ottenere codice indipendente dal sistema di destinazione, l'applicazione deve rilevare le violazioni fuori campo.

Se la REAL/LREAL numero è compreso nell'intervallo di valori del tipo di dati intero, quindi la conversione funziona allo stesso modo su tutti i sistemi.