Определение состояния бита

Nimous

Guest
Определение состояния бита

Допустим, есть цепочка битов:
1010111010 ...
Как можно определить состояние бита
в определённой позиции?
 

Nimous

Guest
Произвольной.

как вариант - превратить её в строковый формат и работать со строкой.
В ПХП это возможно?

Я имею в виду - в строку "01010100...",
а не символ с соотв. кодом.

-~{}~ 14.10.05 19:32:

----------------------
Уже нашёл: sprintf();

Торможу...
 

SiMM

Новичок
Российская медицина наверняка умеет вырезать гланды через ж..у. Вот только целесообразность сего действа можно смело ставить под смонение.
[m]language.operators.bitwise[/m]
 

Nimous

Guest
SiMM
Я там был, но не нашёл ответа на свой вопрос.
Хотя всё-равно спасибо.
 

SiMM

Новичок
> Я там был, но не нашёл ответа на свой вопрос.
Может потому, что его постановка была неверна?
 

Nimous

Guest
Попробую ещё раз:

есть 10010101001 ...
Нужно узнать, бит под номером, например, 3,
равен 1 или 0.
Номер бита известен точно.

через sprintf это делается в два счёта.
 

SiMM

Новичок
> Может потому, что его постановка была неверна?
Нет никаких 10010101001...
Есть байты. Пары байт (слова или WORD). Есть четвёрки байт (DWORD). Есть восьмёрки байт - но к PHP это пока не имеет никакого отношения. Биты - это уже настолько абстрактно, что их поддержка - исключительно искуственна.
Сделай одолжение (при чём не мне, а себе) и объясни задачу без исключительностей, а так, как она стоит.
 

Nimous

Guest
Дело в том, что это - на столько же абстрактный интерес,
насколько и сами биты. Просто стало интересно, можно ли это сделать, и если да, то как.
А реальным битовым операциям в ПХП я пока-что применения не нашёл, разве что криптование.
Так что извини, что голову морочу:)
 

SiMM

Новичок
> Просто стало интересно, можно ли это сделать, и если да, то как.
Выделяем i-й бит числа d
PHP:
echo ($d>>$i) & 1;
 

Nimous

Guest
SiMM
Спасибо.
Надо пожалуй подучить битовые операции.
 
Сверху