![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Биты и байты [D7, WinXP]
boalse © (2006-03-21 06:35:00)Имеется указатель (тип Pointer) на блок данных в памяти. Как поизящьнее в цикле просмотреть каждый байт этих данных. Размер блока, само собой, известен.
Ещё вопрос. Есть переменная типа byte. Как в цикле просмотреть каждый бит этого байта?
Amoeba (2006-03-21 12:05:00) [1]А можно и так (взято из библиотеки QStrings):
function Q_BitTest(P: Pointer; Index: Integer): Boolean;
asm
BT [EAX],EDX
SETC AL
end;
boalse (2006-03-21 06:55:00) [2]Большое спасибо!
MBo (2006-03-21 06:50:00) [3]>Как поизящьнее в цикле просмотреть каждый байт этих данных
PB:=PByteArray(P);
PB[i]...
>Как в цикле просмотреть каждый бит этого байта?
с помощью and и shl или shr
SecondBit:=(PB[i] shr 1) and 1