Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#9

Re: 32bit dword / wie finde ich raus ob bit 0,1 oder 2 geset

  Alt 10. Nov 2003, 23:36
Warum Konstanten ??

1.) @himitsu, Bits werden mit Null basiertem Index durchnumeriert, d.h. Bit 0,1,2,3,4
2.)

Delphi-Quellcode:
 
  if Value and (1 shl Bitnummer) <> 0 then ;
Bitnummer kann nun 0 bis 31 sein und auch direkt im Code stehen

  if Value and (1 shl 3) <> 0 then ; ist das gleiche wie

 if Value and $08 <> 0 then ; und der Compiler macht aus dem (1 shl 3) intern eh eine Konstante = $08.
Somit muß man keinerlei zusätzliche Konstanten mehr definieren, wenn ma

1.) die Bits von 0 bis 31 durchnummeriert, wie es Standard ist
2.) mit shl arbeitet und einer Konstanten für den Bitindex.

Gruß Hagen
  Mit Zitat antworten Zitat