-> Hier kostenlos registrieren
Hallo
Ich suche eine Funktion mit der ich in C# eine Dezimalzahl in eine Gleitpunktzahl im STEP7 Format bekomme.
In Step7 kann man in Varibalen Beobachten Steuern einfach das Anzeige Format ändern, wo man dann auch die beiden Werte sehen kann.
Operand Anzeigeformat Statuswert
DB5.DBD 80 DEZ L#1056964608
DB5.DBD 80 GLEITPUNKT 0.5
Ein einfachse Konvertieren zu double oder float in C# funktioniert nicht.
In S7 gibt es den Befehl DTR der das macht.
Dieser Befehl hält sich an die Norm IEEE 754.
Ich konnte aber leider keine fertige Funktion finden die eine Saubere Umwandlung hinbekommt.
Habe selbst versucht das nachzuprogrammieren. Meine Funktion zeigt vor dem Komma richtige aber nach dem Komma falsche Werte an.
Außerdem stürzt das Programm bei bestimmten Werten ab...:sm7:
Kennt da jemand eine Lösung?
Würde mich über Antwort freuen.
Gruß
Sparx
Ich suche eine Funktion mit der ich in C# eine Dezimalzahl in eine Gleitpunktzahl im STEP7 Format bekomme.
In Step7 kann man in Varibalen Beobachten Steuern einfach das Anzeige Format ändern, wo man dann auch die beiden Werte sehen kann.
Operand Anzeigeformat Statuswert
DB5.DBD 80 DEZ L#1056964608
DB5.DBD 80 GLEITPUNKT 0.5
Ein einfachse Konvertieren zu double oder float in C# funktioniert nicht.
In S7 gibt es den Befehl DTR der das macht.
Dieser Befehl hält sich an die Norm IEEE 754.
Ich konnte aber leider keine fertige Funktion finden die eine Saubere Umwandlung hinbekommt.
Habe selbst versucht das nachzuprogrammieren. Meine Funktion zeigt vor dem Komma richtige aber nach dem Komma falsche Werte an.
Außerdem stürzt das Programm bei bestimmten Werten ab...:sm7:
Kennt da jemand eine Lösung?
Würde mich über Antwort freuen.
Gruß
Sparx