Autor Thema: IEEE_to_REAL [gelöst]  (Gelesen 8831 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline Mudla

  • Newbie
  • *
  • Beiträge: 22
    • Profil anzeigen
IEEE_to_REAL [gelöst]
« am: 23. Februar 2013, 15:30:46 »
Hallo Gemeinde,

ich muss 2 Words im IEEE754-Format in eine Real umwandeln. Gibt es dazu ev. schon einen Baustein von OSCAT, oder ist einer in Planung?

Mein Problem ist, dass ich zwar von Möller eine Bibliothek mit so einem Baustein habe (XS40-FB.lib), der jedoch gleichnamige Bausteine hat wie die OSCATbasic.lib (zB. DAY_OF_WEEK). Und des weiteren würde mich interessieren, wie das "Profis" programmieren :)

Grüße
Mudla
« Letzte Änderung: 23. Februar 2013, 22:28:25 von Mudla »

Offline peewit

  • Moderator
  • *****
  • Beiträge: 2 378
    • Profil anzeigen
Re: IEEE_to_REAL
« Antwort #1 am: 23. Februar 2013, 19:08:48 »
hallo

das sollte eigentlich kein problem sein

oscat basic library

bausteine: DW_TO_REAL und REAL_TO_DW


Offline Mudla

  • Newbie
  • *
  • Beiträge: 22
    • Profil anzeigen
Re: IEEE_to_REAL
« Antwort #2 am: 23. Februar 2013, 22:27:22 »
Danke peewit,

genau das, was ich brauche :)

Könntest du mir ev. noch etwas dazu erklären, warum das so funktioniert? Laut Wiki muss man da doch ne ziemiche Rumrechnerei machen?

Grüße
Mudla

Ps. Vielleicht könnte man in der Doku einen Verweiss drauf machen, dass das für Umrechnungen nach IEEE 754 geeignet ist, für die nicht so versierten Benutzer wie mich?

Offline peewit

  • Moderator
  • *****
  • Beiträge: 2 378
    • Profil anzeigen
Re: IEEE_to_REAL [gelöst]
« Antwort #3 am: 24. Februar 2013, 12:46:42 »
hallo

eine kommazahl in das 32bit real format umzurechnen ist gar nicht so einfach
das stimmt
aber wir brauchen nichts berechnen oder umrechnen

die lösung ist total simple

eine real variable benötigt auf deiner sps genau 32bit
diese 32 bit werden nach der norm benutzt um deine real zahl zu definieren

und genau den speicherinhalt (32bit) dieser real-variable liest der baustein direkt aus und gibt den wert als dword aus
und umgekehrt.

es wird also nichts konvertiert sondern nur der internen variablenspeicher ausgelesen bzw beschrieben

Offline Mudla

  • Newbie
  • *
  • Beiträge: 22
    • Profil anzeigen
Re: IEEE_to_REAL [gelöst]
« Antwort #4 am: 24. Februar 2013, 22:09:40 »
Klingt logisch :)

Danke dir für die Erklärung.

Grüße
Mudla