Bit Alias auf ein BIT innerhalb einer Struktur (Record) setzen

pvs-deck
PowerUser
Avatar
Gender:
Age: 53
Homepage: pvs-deck.de
Posts: 1341
Registered: 02 / 2009
Subject:

Bit Alias auf ein BIT innerhalb einer Struktur (Record) setzen

 · 
Posted: 06.07.2014 - 08:45  ·  #1
Hallo Leute,

ist es möglich ein ALIAS auf ein BIT eines WORDs innerhalb eines Records zu setzen?

Etwa so:
Code

TYPE
TPVSonlineStatus = record
    Kennung                         : WORD;   (* 0 Kennung für USB Transfer *)
    CMD                                : WORD;   (* 2 Cmd Befehl *)
    WM_Status0                    : WORD;   (* 4  Status0.0 Freigabe Aktiv*)
   end;

VAR
 ONL : TPVSonlineStatus;
 ONL_WM_Status0_0 : [@ONL.WM_Status0, 0];
....


//Im weiteren Programmablauf dann 
 ONL_WM_Status0_0 := TRUE;


Oder gibt es da einen besseren Ansatz?

Gruß
PVS-Deck
Harald_K
 
Avatar
 
Subject:

Re: Bit Alias auf ein BIT innerhalb einer Struktur (Record) setzen

 · 
Posted: 06.07.2014 - 11:20  ·  #2
Soweit ich weiß sind boolean-Typen auch ein Byte groß ....

wie wärs denn einfach mit
incl(ONL.WM_Status0, 0);

etspr. excl() zum Löschen und bit() zum Abfragen.




ggf. kann man der Bitnummer ja noch per Konstantendeklaration einen sinnvollen Namen geben
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   50   64 · Page-Gen-Time: 0.030404s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI