Entwickler-Ecke
Algorithmen, Optimierung und Assembler - C ähnlicher funktionsaufruf
Flamefire - So 11.10.09 21:29
Titel: C ähnlicher funktionsaufruf
In dem assembler Code aus verschiedenen C-programmen sehe ich häufiger solche aufrufe:
Quelltext
1: 2: 3: 4:
| MOV ECX,yyy PUSH EAX PUSH EDX CALL xyz |
also der 1. param ist in ecx gespeichert. der rest aufm stack
kann ich in delphi das genauso machen (kompatiblität wegen einer dll datei auf die ich angewiesen bin)?
mit stdcall haut er alles auf den stack. ohne ist (fast) alles in registern...
wie geths es sauber ohne assembler?
BenBE - So 11.10.09 21:52
Gib mal bitte die Deklaration der C-Funktionen. Ich vermute aber mal cdecl oder fastcall als Aufrufkonvention.
Flamefire - So 11.10.09 22:45
hab den quelltext leider nicht.
nur die binary der dll
es scheint nur bei objekten so zu sein (in meinem fall ist das in ecx der pointer eines objektes) die variablen auf dem stack sind dann werte...
also sowas wie
fooObject.bar(23,66);
BenBE - So 11.10.09 23:12
Gibt's beispiel-Source in C? Ggf. den Author bereits angeschrieben gehabt?
Ggf. kann man sich aber auch einen kleinen C-Wrapper für die DLL schreiben ...
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!