![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
сдвиг в DWord
tmpl © (2006-08-24 20:54:00)Привет! Есть DWord'овая переменная, TmpValue = $010f0002. Необходимо прочитать сначало word:$010f, а затем word:$0002.
в итоге, нужно будет использовать так.
if первая_половина_dword(TmpValue) = $0101 then ...
if вторая_половина_dword(TmpValue) = $0f01 then ...
Германн (2006-08-25 02:42:00) [1]
> Pavia © (25.08.06 02:35) [6]
>
> Var Z:Single;
>
> l:=HiWord(z); - не работает, нужно дополнительно приведение
> типа
> l:=LongRec(z).Hi; - работает
>
Неужели работает? И без "дополнительного приведения типов, и с ним"?
Может даже "разумные" значения возвращает? :-)
Хочешь стать "Звездой Ореха"!?
Pavia (2006-08-25 02:35:00) [2]Var Z:Single;
l:=HiWord(z); - не работает, нужно дополнительно приведение типа
l:=LongRec(z).Hi; - работает
Германн (2006-08-25 02:23:00) [3]
> Pavia © (25.08.06 01:26) [4]
>
> А извеняюсь не заметил что DWordб подумал что Word.
> Тогда
> LongRec(TmpValue).Lo
> LongRec(TmpValue).Hi
>
> LongRec(TmpValue).Words[0]
> LongRec(TmpValue).Words[1]
И чем, по-твоему они лучше begin...end © (24.08.06 20:59) [1]
LOWORD, HIWORD
?
Pavia (2006-08-25 01:26:00) [4]А извеняюсь не заметил что DWordб подумал что Word.
Тогда
LongRec(TmpValue).Lo
LongRec(TmpValue).Hi
LongRec(TmpValue).Words[0]
LongRec(TmpValue).Words[1]
Int64Rec для 64битных.
Германн (2006-08-25 01:06:00) [5]
> Pavia © (25.08.06 00:30) [2]
>
> Помойму лучше
> WordRec(TmpValue).Lo
> WordRec(TmpValue).Hi
> или
> WordRec(TmpValue).Bytes[0]
> WordRec(TmpValue).Bytes[1]
Не только нелучше, а вообще не то! В сабже нужен результат типа Word, а твои варианты дают тип Byte.
Pavia (2006-08-25 00:30:00) [6]Помойму лучше
WordRec(TmpValue).Lo
WordRec(TmpValue).Hi
или
WordRec(TmpValue).Bytes[0]
WordRec(TmpValue).Bytes[1]
begin...end (2006-08-24 20:59:00) [7]LOWORD, HIWORD