Пример чтения данных по битовой маске из значения
Falk0ner, вс, 06/07/2008 - 15:34.
:
procedure TForm1.Button1Click(Sender: TObject);
{©Drkb v.3(2007): www.drkb.ru}
const
Col: Word = $ABCD;
var
R,
G,
B: Byte;
begin
R := Byte(Col shr 8) div 8; // первые 5 бит
G := ((Byte(Col shr 8) and $7) * 8) or (Byte(Col) div $20); // Вторые 6 бит
B := Byte(Col) and $1F; // третьи 5 бит
end;
{©Drkb v.3(2007): www.drkb.ru}
const
Col: Word = $ABCD;
var
R,
G,
B: Byte;
begin
R := Byte(Col shr 8) div 8; // первые 5 бит
G := ((Byte(Col shr 8) and $7) * 8) or (Byte(Col) div $20); // Вторые 6 бит
B := Byte(Col) and $1F; // третьи 5 бит
end;
Автор ответа: Rouse_
Взято из http://forum.sources.ru
Отправить комментарий