Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.031 c
9-1127285948
Kerk
2005-09-21 10:59
2006.04.02
Игра "Точки"


2-1142507888
Officeman
2006-03-16 14:18
2006.04.02
Как Попасть в нужный Квадрат? )))))


9-1127210142
Signate
2005-09-20 13:55
2006.04.02
Рисование массивами - текстурные координаты


15-1141998023
Cashmare
2006-03-10 16:40
2006.04.02
Иран


6-1135025373
Eraser
2005-12-19 23:49
2006.04.02
Скорость работы TIdFTP.MakeDir




   Наверх