Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Verwenden von Delphi-Function im inline Assembler (https://www.delphipraxis.net/20614-verwenden-von-delphi-function-im-inline-assembler.html)

rsilo 20. Apr 2004 15:20


Verwenden von Delphi-Function im inline Assembler
 
hallo!

kann mir bitte jemand helfen!

Ich versuche gerade eine selbst definierte Funktion in einer anderen Assembler-Funktion aufzurufen.

Wie mache ich das ?



Mit CALL?

Wo wird das RESULT gespeichert?

Delphi-Quellcode:
function Test(n: Integer): Real;
begin
...
end;
Delphi-Quellcode:
function ASMTest(a, b: Integer): real;
asm

CALL Test(n); //Stimmt das?

end;
Danke schon im Vorraus fuer die Hilfe!

rsilo

Muetze1 20. Apr 2004 15:48

Re: Verwenden von Delphi-Function im inline Assembler
 
Moin!

Den Parameter musst du vor dem Aufruf auf den Stack pushen und der Rückgabewert des Reals (8 Byte gross) steht als Zeiger auf den Inhalt in EAX nach dem Aufruf.

Code:
Asm
  push 4 // 32 Bit Wert pushen - ist der Parameter n
  call Test
  // hier steht in eax die adresse wo du die 8 Byte des Real-Wertes hast.
End;
MfG
Muetze1

rsilo 21. Apr 2004 13:58

Re: Verwenden von Delphi-Function im inline Assembler
 
Super! Danke

rsilo


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz