Liegt die Fließkommazahl innerhalb des Wertebereichs des Zieldatentyps, so funktioniert die Konvertierung auf allen Systemen gleich.
Wenn die Fließkommazahl die Bereichsgrenze überschreitet, werden die ersten Bytes der Zahl nicht berücksichtigt.
Die Operatoren konvertieren eine Gleitkommazahl in die angegebenen Datentypen und geben einen typkonvertierten Wert zurück. Falls zutreffend, wird die Umrechnung gerundet.
Im Falle einer REAL_TO_<Zieltyp> Konvertierung wird der Wert zuerst in UDINT konvertiert und erst dann in den Zieltyp umgewandelt.
Im Falle der Konvertierung LREAL_TO_<Zieltyp> wird der Wert zunächst in ULINT konvertiert und erst dann in den Zieltyp umgewandelt.
Aufrufsyntax: REAL_TO_<Zieltyp>(<Operand>), LREAL_TO_<Zieltyp>(<Operand>)
|
Operand |
Typ |
Beschreibung |
|---|---|---|
|
Variable oder Literal |
REAL, LREAL |
REAL, LREAL |
Operator: REAL/LREAL_TO_<Zieltyp>
|
Operator: REAL |
Operator: LREAL |
Beispiel |
Rückgabewert |
|
|---|---|---|---|---|
|
REAL_BIS___UXINT |
LREAL_TO___UXINT |
REAL_TO___UXINT(1.234) LREAL_TO___UXINT(0.987654321) |
1 1 |
__UXINT, __XINT, __XWORD |
|
REAL_TO___XINT |
LREAL_TO___XINT |
__UXINT, __XINT, __XWORD |
||
|
REAL_TO___XWORD |
LREAL_TO___XWORD |
__UXINT, __XINT, __XWORD |
||
|
REAL_TO_BIT |
LREAL_TO_BIT |
BIT |
||
|
REAL_TO_BOOL |
LREAL_TO_BOOL |
LREAL_TO_BOOL(0.987654321) |
TRUE |
BOOL |
|
REAL_TO_BYTE |
LREAL_TO_BYTE |
REAL_TO_BYTE(1.234) LREAL_TO_BYTE(0.987654321) |
1 |
Integer |
|
REAL_TO_DATE |
LREAL_TO_DATE |
REAL_TO_DATE(1.234) LREAL_TO_DATE(0.987654321) |
D#1970-1-1 |
Datentyp: DATUM |
|
REAL_TO_DINT |
LREAL_TO_DINT |
REAL_TO_DINT(1.234) |
1 |
Integer |
|
REAL_TO_DT |
LREAL_TO_DT |
REAL_TO_DT(1.234) |
D#1970-1-1-0:0:1 |
Datentyp: DATUM |
|
REAL_TO_DWORD |
LREAL_TO_DWORD |
REAL_TO_DWORD(1.234) |
32#1 |
Integer |
|
REAL_TO_INT |
LREAL_TO_INT |
REAL_TO_INT(-1.5) |
-2 |
Integer |
|
REAL_TO_LDATE |
LREAL_TO_LDATE |
REAL_TO_LDATE(1.234) |
DT#1970-1-1 |
Intern wird er zunächst in ULINT umgewandelt und der Wert dann als Datum zurückgegeben. |
|
REAL_TO_LDT |
LREAL_TO_LDT |
LREAL_TO_DT(0.987654321) |
D#1970-1-1-0:0:1 |
Ziel-Datentyp: LDATE_AND_TIME Datentyp: DATUM |
|
REAL_TO_LINT |
LREAL_TO_LINT |
REAL_TO_LINT(1.234) |
1 |
Integer |
|
REAL_TO_LTOD |
LREAL_TO_LTOD |
Datentyp: DATUM |
||
|
REAL_TO_LREAL |
- |
REAL_TO_LREAL(1.234) |
1.234 |
REAL, LREAL |
|
REAL_TO_LTIME |
LREAL_TO_LTIME |
Intern wird er zunächst in ULINT umgewandelt und dann wird der Wert wie in ns zurückgegeben. Datentyp: ZEIT, LTIME |
||
|
REAL_TO_LWORD |
LREAL_TO_LWORD |
Integer |
||
|
- |
LREAL_TO_REAL |
|||
|
REAL_TO_SINT |
LREAL_TO_SINT |
Integer |
||
|
REAL_TO_STRING |
LREAL_TO_STRING |
REAL_TO_STRING(1.234) |
'1.234' |
STRING |
|
REAL_TO_TIME |
LREAL_TO_TIME |
REAL_TO_TIME(1.234) |
T#1ms |
Intern wird er zunächst in ULINT umgewandelt und dann wird der Wert wie in ms zurückgegeben. Datentyp: ZEIT, LTIME |
|
REAL_TO_TOD |
LREAL_TO_TOD |
REAL_TO_TOD(1.234) |
TOD#0:0:0.001 |
Intern wird er zunächst in UDINT umgewandelt und der Wert dann als TOD zurückgegeben. Syntax: TOD#hh:mm:ss.sss Datentyp: DATUM |
|
REAL_TO_UDINT |
LREAL_TO_UDINT |
Integer |
||
|
REAL_TO_UINT |
LREAL_TO_UINT |
Integer |
||
|
REAL_TO_ULINT |
LREAL_TO_ULINT |
Integer |
||
|
REAL_TO_USINT |
LREAL_TO_USINT |
Integer |
||
|
REAL_TO__WORD |
LREAL_TO__WORD |
REAL_TO_WORD(1.2345678E11) |
1 |
Integer |
|
REAL_TO_WSTRING |
LREAL_TO_WSTRING |
REAL_TO_WSTRING(1.23456789E11) |
"1.234" |
WSTRING |
-
Rundung
-
Umwandlung in eine Zeichenkette