Zugriff auf einzelne bits eines Realwerts

Züttu

Level-1
Beiträge
195
Reaktionspunkte
19
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich bin gerade mit der Analyse eine Bausteins beschäftigt, und bin auf folgende Zeilen am Anfang des Bausteins gestossen.


SET
SAVE
= L 68.1

LD68 ist ein Realwert, demnach wird das zweite bit des Realwerts auf 1 gesetzt


Am Ende steht folgendes:

CLR
U L 68.1
SAVE
BE

Demnach wird das gleiche bit auf das BIE-bit geschrieben

Im Baustein wird auch auf L 68.2 zugegriffen.

Der Zugriff auf einzelen bits eines Realwerts macht für mich keinen Sinn, ausser man will die polarität verändern. Hat jemand dafür eine Erklärung?
 
1. nicht das zweite, sondern das 26. ... das warum wirste vielleicht selber ergründen können
2. wird damit der exponent mit 2³ vorbesetzt
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ist LD68 sicher der Realwert oder ist dieser jetzt an einer anderen Adresse? Ich gaube nicht, dass Siemens Bits eines reservierten Wortes missbraucht. Oder wird dieses LD68 nur als solches direkt und absolut verwendet ohne deklariert zu sein?
 
Das mit dem 26. bit hab ich begriffen, ebenso mit dem Exponenten. Das heisst mit L68.2 => 2hoch4

Danke @ vierlagig

@ Deltalogic

Das LD68 ist ein Realwert im IN-Bereich und wird ebenso direkt wie indirekt verwendet.
 
Hallo,
das mit dem 2^4 macht doch bei einer Real-Zahl so gar keinen Sinn. Den dargestellten Code kenne ich eigentlich nur in Verbindung "Retten des Eingangs-VKE" und genau danach sieht es für mich aus.
Von was sprechen wir hier denn eigentlich ? FC oder FB ? Das mit den "gleichen Adressen macht nämlich so auch keinen Sinn ...

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Mir sieht es auch stark nach einem VKE-Zwischenspeichern aus. Dann hat später jemand einen REAL-Wert im Temp-Bereich hinzugefügt und die sicherlich erschienene Meldung "Wird schon im L-Bereich verwendet" ignoriert....
Gruß Approx
 
Danke für eure Antworten, mir ist schon klar das mit SAVE der VKE gerettet wird.

Es handelt sich hier um einen FB aus der Siemens Bibliothek, daher glaube ich sind keine Fehler enthalten. Ich möchte nur verstehen was der Programmierer damit erreichen wollte.
Ich werd das ganze morgen mal mit dem Debugger beobachten, vielleicht komm ich ja dahinter....
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für eure Antworten, mir ist schon klar das mit SAVE der VKE gerettet wird.

Es handelt sich hier um einen FB aus der Siemens Bibliothek, daher glaube ich sind keine Fehler enthalten. Ich möchte nur verstehen was der Programmierer damit erreichen wollte...

Hallo,
da haben wir es doch schon ... FB ... hatte ich mir schon gedacht.
Die Schnittstelle eines FB (z.B. die IN-Parameter) werden NICHT im L-Bereich desselben abgebildet sondern im I-DB.
Es ist also genau so, wie schon beschrieben - die eine Sache hat mit der anderen Sache gar nichts zu tun ... (weil in einem anderen Speicherbereich abgelegt).

Ach ja - (Standard-)Siemens-FB's sind schon mit Kommentaren in der Ursprungs-Version schwer zu verdauen ... geschweige denn ohne all das ...

Gruß
Larry
 
Ich hab natürlich nicht daran gedacht dass der IN-Bereich im I-DB zu finden ist und nur der TEMP-Bereich in die Lokaldaten kommt. Ich glaube damit hat sich meine Frage gelöst, Danke an alle die Geduld mit mir hatten.
 
Zurück
Oben