poppycock
Level-1
- Beiträge
- 253
- Reaktionspunkte
- 21
-> Hier kostenlos registrieren
Hallo liebe SPS-Gemeinde,
ich habe ein vorerst theoretisches Problem mit dem Zusammenfügen zweier 16bit-Werte zu einer 32bit-Festpunktzahl innerhalb der S5-CPU 6ES5 943-7UB21.
Mir ist nicht ganz schlüssig, wie ich folgendes mit der S5 umsetzen kann, da ich mit der S7 vertrauter bin:
Im DB111 stehen beispielsweise folgendende Werte:
Nun möchte ich im PB23 die beiden Worte aus dem Datenbaustein zu einem Doppelwort zusammenfügen und durch 1000 dividieren.
Der Rest der Division interessiert mich im Moment nicht, mir ist erstmal wichtig zu wissen, ob das überhaupt mit dieser CPU funktioniert...
Heute Abend habe ich kein STEP5 mehr zur Verfügung, aber ist folgender Ansatz richtig bzw. kann die CPU943 damit umgehen?
Besten Dank,
poppycock
ich habe ein vorerst theoretisches Problem mit dem Zusammenfügen zweier 16bit-Werte zu einer 32bit-Festpunktzahl innerhalb der S5-CPU 6ES5 943-7UB21.
Mir ist nicht ganz schlüssig, wie ich folgendes mit der S5 umsetzen kann, da ich mit der S7 vertrauter bin:
Im DB111 stehen beispielsweise folgendende Werte:
- DW0 KH FFFF ; High-Word
- DW1 KH 0001 ; Low-Word
Nun möchte ich im PB23 die beiden Worte aus dem Datenbaustein zu einem Doppelwort zusammenfügen und durch 1000 dividieren.
Der Rest der Division interessiert mich im Moment nicht, mir ist erstmal wichtig zu wissen, ob das überhaupt mit dieser CPU funktioniert...
Heute Abend habe ich kein STEP5 mehr zur Verfügung, aber ist folgender Ansatz richtig bzw. kann die CPU943 damit umgehen?
Code:
A DB111 ; Datenbaustein öffnen
L DW0 ; High-Word aus dem DB111 laden...
T MW0 ; ... und in das MW0 transferieren
L DW1 ; Low-Word aus dem DB111 laden...
T MW2 ; ... und in das MW2 transferieren
L MD0 ; das entstandene Merkerdoppelwort laden
L KF +1000 ; 1000 laden
/D ; MD0 durch 1000 teilen
T ....... ; Ergebnis speichern...
Besten Dank,
poppycock