Funktionsweise der Operationen Zahl runden und Realzahl in ganze Zahl (32 Bit)
wandeln
Die Operation Zahl runden (ROUND) wandelt eine Realzahl IN in ei-
nen ganzzahligen Wert (32 Bit) um und lädt das Ergebnis in die von
OUT angegebene Variable. Ist der gebrochene Anteil 0,5 oder höher,
wird die Zahl aufgerundet.
Die Operation Realzahl in ganze Zahl (32 Bit) wandeln (TRUNC) wan-
delt eine Realzahl IN in einen ganzzahligen Wert (32 Bit) mit Vorzei-
chen um und lädt das Ergebnis in die von OUT angegebene Variable.
Nur der ganzzahlige Teil der Realzahl wird umgewandelt (und der Rest
wird verworfen).
Ist der Wert, den Sie umwandeln möchten, keine gültige Realzahl oder zu groß, um im Ausgang dargestellt
zu werden, wird das Überlaufbit gesetzt und der Ausgang nicht verändert.
Beispiel: Genormte Umwandlungsoperationen
Ganze Zahl (32 Bit) in Realzahl wandeln und Zahl runden
Z10
101
Zählwert = 101 Zoll
Zählwert (als Realzahl)
VD0
101.0
VD4
2.54
Konstante 2,54 (Zoll in Zentimeter)
VD8
256.54
256,54 Zentimeter als Realzahl
VD12
257
257 cm als ganze Zahl (32 Bit)
Netzwerk 1
//Zoll in Zentimeter umwandeln:
//1. Zählerwert (Zoll) in Akkumulator 1 laden.
//2. Wert in Realzahl wandeln.
//3. Mit 2,54 multiplizieren (um in Zentimeter umzuwan
//deln).
//4. Wert zurück in ganze Zahl wandeln.
LD
E0.0
ITD
Z10, AC1
DTR
AC1, VD0
MOVR
VD0, VD8
*R
VD4, VD8
ROUND VD8, VD12
Netzwerk 2
//BCD-Wert in ganze Zahl wandeln.
LD
E0.3
BCDI
AC0
S7-200 Befehlssatz
Kapitel 6
Fehlerbedingungen,
die ENO = 0 setzen
H SM1.1 (Überlauf)
H 0006 (Indirekte Adresse)
Betroffene Sondermerker:
H SM1.1 (Überlauf)
BCD in ganze Zahl wandeln
AC0
1234
BCDI
AC0
04D2
6
95