Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.12.2010, 02:50   #1
-MagicAlex-
Пользователь
 
Аватар для -MagicAlex-
 
Регистрация: 28.12.2009
Сообщений: 42
По умолчанию Значение отдельного бита целого числа в логическую переменную

Стоит следующая задача...
Есть беззнаковое целое число (типа Cardinal). Нужно значение отдельного бита этого числа записать в переменную типа Boolean. Первое, что пришло на ум - конвертация числа в двоичное представление в виде строки, в строке анализируем соответствующий биту символ, если он "1" - в переменную пишем TRUE, если "0" - FALSE, соответственно.
Но мне почему-то кажется есть более простое и элегантное решение этой задачи. Если кто сталкивался - подскажите. Заранее спасибо!
-MagicAlex- вне форума Ответить с цитированием
Старый 28.12.2010, 03:14   #2
-MagicAlex-
Пользователь
 
Аватар для -MagicAlex-
 
Регистрация: 28.12.2009
Сообщений: 42
По умолчанию

Все, уже сам допёр ))
Может кому пригодиться...

Код:
function DefineBit(Value: Cardinal; Number: Integer): Boolean
begin
  if Value and (1 shl Number) <> 0 then Result := TRUE else Result := FALSE;
end;
-MagicAlex- вне форума Ответить с цитированием
Старый 28.12.2010, 09:03   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

можно проще
Код:
function DefineBit(Value: Cardinal; Number: Integer): Boolean
begin
  Result := ( Value and (1 shl Number)) <> 0;
end;
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не работает перевод из целого числа в ASCII professor Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 07.06.2010 06:59
Вывести числа целого неотр. числа Gonzo Помощь студентам 11 04.05.2010 16:55
Поиск целого числа в строке sven117 Общие вопросы C/C++ 9 01.07.2009 14:01
Битовые операции: как узнать значение отдельного бита? phobos Общие вопросы C/C++ 5 30.04.2009 09:31
сумма цифр целого числа mihsel Microsoft Office Excel 8 13.04.2009 13:57