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

Вниз

Битовые флаги   Найти похожие ветки 

 
Sliski Slimak   (2003-06-14 01:12) [0]

Господа, как определить из суммы битовых флагов, какие флаги установлены?
Ну, например:
const
BF_1=2;
BF_2=4;
BF_3=8;
BF_4=16;
.....
..........
x:=BF_1 or BF_3;

а как теперь-то определить, какие флаги установлены?


 
Metal Knight ©   (2003-06-14 01:43) [1]

if (x AND BF_1) then ...


 
Sliski Slimak   (2003-06-14 11:40) [2]

Покорнейше благодарю!


 
Sliski Slimak   (2003-06-14 13:12) [3]

Но увы, вышеприведённый вариант НЕ работает.......
Может, кто-нибудь ещё подскажет?


 
panov ©   (2003-06-14 15:55) [4]

В форуме "Потрепаться" есть тема "Уроки Ю.Зотова"
Думаю, что надо бы с этого начать.

Правльно так:
if (x AND BF_1)= BF_1 then ...


 
Юрий Зотов ©   (2003-06-14 17:31) [5]

> Sliski Slimak

Советую заглянуть сюда:
http://www.baseprogram.narod.ru/index.htm


 
HolyGlory   (2003-06-14 17:43) [6]


> В форуме "Потрепаться" есть тема "Уроки Ю.Зотова"
> Думаю, что надо бы с этого начать.
>
> Правльно так:
> if (x AND BF_1)= BF_1 then ...

Правильней так: if (x and BF_1)<>0 then...
(В первом случае будет cmp eax, BF_1 во втором or eax,eax (или test eax,eax)). Последняя занимет меньше места и декодируется за один такт :)



 
Юрий Зотов ©   (2003-06-14 18:58) [7]

Еще вариант:
if Boolean(x and BF_1) then...



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

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

Наверх




Память: 0.47 MB
Время: 0.03 c
3-83869
a123
2003-06-02 12:59
2003.06.26
Поиск записей


14-84702
Шишкин Илья
2003-06-04 22:22
2003.06.26
Как получить информацию о коннекте к интернету?


7-84806
HeWSter
2003-04-19 07:27
2003.06.26
Инфо системы


3-83944
angelcom
2003-06-01 03:33
2003.06.26
вопрос о DBGrid


3-84030
Солер
2003-06-01 08:03
2003.06.26
В DBGrid какая то абракадабра