Вниз
Скачать: CL | DM;

Low_dword & High_dword   Найти похожие ветки 

← →
Igit ©   (2003-01-22 20:35) [0]

у меня в переменной yx:dword лежат координаты курсора мыши первые 4 байта - по y, последние - по x (например для 1023*1 yx=66559($0001 03ff) ). Как мне получить эти x и у. x я получаю так - word(yx), а x пробовал так - word(yx-word(yx)), но так всегда 0...также пробовал x получить так:
asm
push eax
mov eax, yx
mov x, ax
pop eax
end;
но не получается, и бряки не ставятся (Delphi виснет с компом...)


← →
Igit ©   (2003-01-22 20:41) [1]

Или хотябы как передвинуть все байты в право (в асме shr, но только для двоичых...)


← →
Tux   (2003-01-22 20:45) [2]

lo = yx shr 16;
hi = yx and $ffff0000


← →
Anatoly Podgoretsky ©   (2003-01-22 20:59) [3]

dword не может хранить 8 байт


← →
Юрий Зотов ©   (2003-01-22 22:13) [4]

Да...

Раньше я думал, что человек, умеющий написать хотя бы одну ассемблерную команду, должен все же знать, что 4+4 будет 8, а не 4. Уж не говоря о знании побитовых операций.

Теперь вижу, что ошибался.


← →
Igit ©   (2003-01-23 09:07) [5]

Большое спасибо.... у меня все получилось:
y:=yx shr 16;
x:=word(yx);
а я думал, что shr, 16 поделит нацело на 8...


← →
Anatoly Podgoretsky ©   (2003-01-23 09:32) [6]

Юрий Зотов © (22.01.03 22:13)
А что теперь скажешь :-)



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

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



Память: 0.46 MB
Время: 0.011 c
3-96586
ihtiandr
2003-01-13 12:48
2003.01.30
sql


14-96959
Rouse_
2003-01-12 21:21
2003.01.30
Бета-чай


3-96640
Kudatsky
2003-01-14 14:50
2003.01.30
Проверка синтаксиса SQL-запроса


3-96539
comwwad
2003-01-15 08:31
2003.01.30
Взаимодействие Д и Е


6-96902
Repeater
2002-12-03 15:43
2003.01.30
Протокол UDP




   Наверх