Bitfelder

Schnelle objektorientierte, kompilierende Programmiersprache.
Antworten
Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Bitfelder

Beitrag von cloidnerux » Fr Jan 09, 2009 4:03 pm

Da ich mich jezt mal mit Atmel Programmierung beschäftigt habe,
bin ich auf "Bitfelder" gestoßen.
Nach einer dortigen Definitions, kann man mit Bitfeldern jedes Bit einer Variable ansteuern
und es wie eine Eigenständige VAriable behandeln.

Code: Alles auswählen

struct {
unsigned char bStatus_1:1; // 1 Bit für bStatus_1
unsigned char bStatus_2:1; // 1 Bit für bStatus_2
unsigned char bNochNBit:1; // Und hier noch mal ein Bit
unsigned char b2Bits:2; // Dieses Feld ist 2 Bits breit
// All das hat in einer einzigen Byte-Variable Platz.
// die 3 verbleibenden Bits bleiben ungenutzt
} x;
So soll eine definition eines Bitfeldes Aussehen.
Da mir Bitfelder bisher unbekannt waren,
wollte ich fragen, ob ihr Bitfelder kennt und wenn ja,
dann wie genau das Funktioniert.
THX im vorraus.
Redundanz macht wiederholen unnötig.
quod erat expectandum

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8859
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Bitfelder

Beitrag von Xin » Sa Jan 10, 2009 6:09 am

cloidnerux hat geschrieben:Da ich mich jezt mal mit Atmel Programmierung beschäftigt habe,
bin ich auf "Bitfelder" gestoßen.
Was ist Atmel-Programmierung?
cloidnerux hat geschrieben:Nach einer dortigen Definitions, kann man mit Bitfeldern jedes Bit einer Variable ansteuern
und es wie eine Eigenständige VAriable behandeln.
So soll eine definition eines Bitfeldes Aussehen.
Da mir Bitfelder bisher unbekannt waren,
wollte ich fragen, ob ihr Bitfelder kennt und wenn ja,
dann wie genau das Funktioniert.
THX im vorraus.
Kenne ich, die Bits werden durchnummeriert. Du kannst auch :2 oder :3 (...) sagen, wenn Du mehr als ein Bit verwenden möchtest. Entsprechend breit ist die Variable dann.

Es ist eine implizite Verwendung von & und << Operationen.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Jside
Beiträge: 377
Registriert: Di Nov 11, 2008 12:56 am

Re: Bitfelder

Beitrag von Jside » Sa Jan 10, 2009 11:42 am

Was ist Atmel-Programmierung?
ATMEL Microcontroller meint er bestimmt....

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Bitfelder

Beitrag von cloidnerux » Sa Jan 10, 2009 3:52 pm

Ja, Atmel Mikrocontroller Programmeirung, hier an einem ATmega8 mit 16Mhz und 8Kb Ram.
Aha, danke für die Infos.
Redundanz macht wiederholen unnötig.
quod erat expectandum

Antworten