Step 7 statische Variablen

Junge

Level-2
Beiträge
226
Reaktionspunkte
17
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich habe das "Problem", dass ich gerne auf ein bestimmtes Bit in einer statischen Variabeln zugreifen möchte die aber als Word deklariert ist. Folgendes Beispiel:

Ich Habe mir einen FB erstellt mit einer statischen Variablen z.B "Stat_1" (Datentyp Word, Adresse 70.0)
jetzt möchte ich gerne auf ein Bit auf der Adresse 70.5 zugreifen (innerhalb des FB). wie kann ich das machen? Mir fehlt dazu irgendwie der Befehl.

Wenn es eine Word Variable aus einem DB wäre, würde ich dies mit DB.DBx... machen, aber bei einer statischen Variable weiss ich nicht wie ich da auf ein Bit zugreifen kann...

Und das gleiche "Problem" habe ich nochmal mit einer Statischen Variable die als DWord deklariert ist und hier möchte ich gerne auf ein Wordbereich aus dieser Variable zugreifen. Im Prinzip das gleiche Problem wie oben.
 
Um es nachvollziehbar zu machen würde ich das Wort auf eine Struktur mit 16 Bits kopieren und dort dann zugreifen.


Gesendet von meinem iPhone mit Tapatalk
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Was genau meinst du mit Struktur? Bzw wie sollte das aussehen?

Ich hatte irgendwie an

L Stat-1
L ari1 p#...
Oder ähnliches gedacht, nur da fehlt mir jetzt der korrekte "Befehl".
 
Der Klassiker:
- die Bits ausmaskieren mit Wordverknüpfungs-AND, z.B.: WordVar AND W#16#0100
- das Word auf eine temporäre Bit-Struktur kopieren und da die Bits ansprechen
- AT-Sicht in SCL, oder AWL falls die CPU das unterstützt
- Slice-Zugriff, falls die CPU das unterstützt: Variable.x1

Alle direkt adressierten Bit-Zugriffe ala DBX.. oder DIX.. in nicht als Bool deklarierten Speicher sind heutzutage abzulehnen, wegen der hohen Gefahr, dabei unentdeckte und vom Compiler nicht verhinderbare Fehler zu machen, besonders bei Programmänderungen mit Verschiebung von Variablenadressen.

Nachtrag:
- man kann das Bit ins Statusbit A1 schieben oder rotieren und danach mit "U >0" abfragen (ins VKE holen)

Harald
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hm....da hat natürlich Harald recht. Allerdings ist es auch sehr "umständlich" (wenn auch sinnvoller Programmmiert) für eine ledigliche Abfrage eines Bits, dies über z.B. Bit-Struktur zu tun.

Wahscheinlich werd ich es so machen, wie Harald und auch schon Mitch gesagt hat- Bit Struktur. ist einfach und verständlich (aber total umständlich ;))

Danke an euch beiden.
 
Zurück
Oben