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

Вниз

Биты и байты   Найти похожие ветки 

 
boalse ©   (2006-03-21 06:35) [0]

Имеется указатель (тип Pointer) на блок данных в памяти. Как поизящьнее в цикле просмотреть каждый байт этих данных. Размер блока, само собой, известен.

Ещё вопрос. Есть переменная типа byte. Как в цикле просмотреть каждый бит этого байта?


 
MBo ©   (2006-03-21 06:50) [1]

>Как поизящьнее в цикле просмотреть каждый байт этих данных

PB:=PByteArray(P);
PB[i]...

>Как в цикле просмотреть каждый бит этого байта?
с помощью and и shl или shr

SecondBit:=(PB[i] shr 1) and 1


 
boalse ©   (2006-03-21 06:55) [2]

Большое спасибо!


 
Amoeba ©   (2006-03-21 12:05) [3]

А можно и так (взято из библиотеки QStrings):

function Q_BitTest(P: Pointer; Index: Integer): Boolean;
asm
       BT      [EAX],EDX
       SETC    AL
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.041 c
2-1142425631
Fenix
2006-03-15 15:27
2006.04.02
Динамическое создание элементов ListView


15-1141746714
Ученик чародея
2006-03-07 18:51
2006.04.02
Наука и лженаука в чем отличие?


2-1142517746
PoetOfDelphi
2006-03-16 17:02
2006.04.02
SelectAl для DBGrid а с включённым dgMultiSelect


1-1140179067
rolex
2006-02-17 15:24
2006.04.02
Как сделать нерабочими CheckBox ы и Header в ListView?


2-1142337389
Emik
2006-03-14 14:56
2006.04.02
Interbase