Auswirkungen der Compiler-Einstellungen auf die Ausführung

Mathematische Funktionen, die Gleitkommazahlen (REAL, LREAL) verarbeiten, können unterschiedliche Ergebnisse auf den unterschiedlichen Zielsystem liefern – vor allem, wenn das Ergebnis der Funktion im Grenzbereich des Datentyps liegt. Die se unterschiedliche Genauigkeit der mathematischen Funktionen wird durch die folgenden Faktoren verursacht:

  • das →Zielsystem selbst,

  • der dafür verwendete Compiler und

  • die konfigurierten Optimierungseinstellungen des Compilers.

Bausteine/Variablen mit LREAL nicht für Controllino oder Arduino Nano verwenden

Falls Sie eine Anwendung für einen →Controllino oder →Arduino Nano erstellen, vermeiden Sie die Verwendung von Bausteinen/Variablen, die LREAL-Werte verarbeiten/liefern. Die Verwendung solcher Bausteine/Variablen ist zwar möglich, die LREAL-Werte werden jedoch mit der Genauigkeit von REAL-Werten abgearbeitet.

Bekannte Beispiele

Zielsystem

Ergebnis der mathematischen Funktion TRUNC_DINT(REAL#3.402823466e+38);

→logi.RTS für Windows

-2147483648

→Raspberry Pi

2147483647