Zitat :
|
müsste man sie dann nicht verODERn, anstatt verUNDen? |
Das ist prinzipiell egal, es hängt davon ab, wie solche Begriffe definiert sind.
In den mitgelieferten Headers bzw. Include Files sind sie so definiert, dass man sie mittels AND kombinieren kann.
Wenn du z.B. Bit3 und Bit2 beinflussen willst, dann kannst du folgende Konstanten zum ANDen verwenden:
SetBit3 00001000 , ResetBit3 11110111
SetBit2 00000100 , ResetBit2 11111011
Das passiert auch nicht zur Laufzeit, wie P51D vermutet "Die ganzen fuses werden nur beim Start definiert. Danach kommt erst die Endlosschlaufe." ,
sondern der Compiler bzw. Assembler setzt einen einzigen konstanten Wert zusammen, während er das Quellprogramm analysiert.
Deshalb ist es auch ziemlich egal, wo im Programm solche Anweisungen stehen. Daraus resultieren ja keine Maschinenbefehle.
Die Addition anstelle von AND ist schlecht geeignet, weil dann Überträge zwischen den Bits auftreten können und etwas anderes entsteht als du annimmst.
_________________
Haftungsausschluß:
Bei obigem Beitrag handelt es sich um meine private Meinung.
Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.
Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !
[ Diese Nachricht wurde geändert von: perl am 10 Jul 2008 21:07 ]
[ Diese Nachricht wurde geändert von: perl am 10 Jul 2008 21:11 ]