Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.04;
Скачать: CL | DM;

Вниз

как работать с битами отдельно из одного байта?   Найти похожие ветки 

 
pav74 ©   (2006-05-15 18:37) [0]

ктонибуть может подсказать чайнику как работать с битами отдельно из одного байта? как получить доступ к отдельным битам? зараннее спасибо
Павел


 
Ega23 ©   (2006-05-15 18:42) [1]

shl, shr, and


 
MetalFan ©   (2006-05-15 18:55) [2]

function IsBitOn (Value: Integer; Bit: Byte): Boolean;
begin
 Result := (Value and (1 shl Bit)) <> 0;
end;

function TurnBitOn (Value: Integer; Bit: Byte): Integer;
begin
 Result := Value or (1 shl Bit);
end;

function TurnBitOff (Value: Integer; Bit: Byte): Integer;
begin
 Result := Value and not (1 shl Bit);
end;


 
Германн ©   (2006-05-16 01:25) [3]

И ещё раз о своём, любимом варианте:
TMyBits = (Bit0,Bit1,Bit2,Bit3,Bit4,Bit5,Bit6,Bit7);
var
  MyBitsOfByte : TMyBits;
  MyBite : Byte absolute MyBitsOfByte;
begin
 MyBite:=...;
 if Bit1 in MyBitsOfByte then ...

P.S.
Когда-то утверждалось, что оператор in "гораздо лучше в попугаях, чем операторы сдвига". Поскольку используют инструкцию TEST.



Страницы: 1 вся ветка

Текущий архив: 2006.06.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.073 c
2-1147782849
pathfinder
2006-05-16 16:34
2006.06.04
Определение кодировки?


4-1142026212
TheEd
2006-03-11 00:30
2006.06.04
ShellExecute(Handle, open ,PCHAR(EMAIL),... - EMAIL c пробелами


4-1142334849
DelphiLexx
2006-03-14 14:14
2006.06.04
При нажатии клавиши передавать символ в два окна


3-1144784361
{AleX}
2006-04-11 23:39
2006.06.04
Как правельно проводить аудентификацию пользователя?


15-1146996204
inri13666
2006-05-07 14:03
2006.06.04
Помогите Плиз С Клав Шпионом