Показать сообщение отдельно
  #14  
Старый 15.05.2013, 02:33
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Только при компиляции под х32 приведение указателя к unsigned long long будет обсчитывать лишние 4 байта, которые всегда будут нули. Так что не универсально.
Как-то так:
Код:
 void *a = (void *)0x12345678;
 volatile unsigned long long b = (unsigned long long)a;
...
  mov     ecx, 12345678h
  mov     eax, ecx
  xor     edx, edx
  mov     [ebp+var_8], eax
  mov     [ebp+var_4], edx
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием