Einzelnen Beitrag anzeigen

Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#19

Re: Verdrehte Bits (Wilde Pointereien)

  Alt 17. Aug 2007, 10:09
Hi Sebastian,

wenn du SwapBytes als Methode definierst, steht im Register EAX der Zeiger auf die aktuelle Instanz, das eigentliche Argument Source wird im Register EDX übergeben. Das Tauschen ist aber unabhängig von der Klasse, deshalb würde ich es als einfache Funktion definieren:

Delphi-Quellcode:
function SwapBytes (Source: DWORD): DWORD;
asm
  // This is not written as mnemonics to be compatible with D4!
  db 0Fh, 0C8h // "bswap EAX" can only be executed on 486+!!!
end;
Gruß Hawkeye
  Mit Zitat antworten Zitat