Советы по Delphi

       

Выставление и сброс битов


SetWord - слово, которое необходимо установить. BitNum - номер бита, который необходимо выставить согласно определениям в секции const (Bit0, Bit1 и др...). GetBitStat возвращает Истину, если бит установлен и Ложь в противном случае.

{ Слово записывается следующим образом... }
{ Слово - 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }{ Номер бита - 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 }
Const
Bit0 = 1;Bit1 = 2;Bit2 = 4;Bit3 = 8;Bit4 = 16;Bit5 = 32;Bit6 = 64;Bit7 = 128;
Bit8 = 256;Bit9 = 512;Bit10 = 1024;Bit11 = 2048;Bit12 = 4096;Bit13 = 8192;Bit14 = 16384;Bit15 = 32768;
Procedure SetBit(SetWord, BitNum : Word);
BeginSetWord := SetWord Or BitNum; { Устанавливаем бит }End;
Procedure ClearBit(SetWord, BitNum : Word);
BeginSetWord := SetWord Or BitNum; { Устанавливаем бит }SetWord := SetWord Xor BitNum; { Переключаем бит }End;
Procedure ToggleBit(SetWord, BitNum : Word);
BeginSetWord := SetWord Xor BitNum; { Переключаем бит }End;
Function GetBitStat(SetWord, BitNum : Word) : Boolean;BeginGetBitStat := SetWord And BitNum = BitNum { Если бит установлен }End;

[000160]



Содержание раздела