utilizzando D assembly inline im cercando di attuare chiamano funzioni STDCALL dinamicamente (con parametri dinamici)stdcall ASM
Ho il seguente complesso args è un puntatore nullo a un array di interi a 32 bit argc è il numero della è il conteggio ret argomento è un puntatore nullo e indirizzo è l'indirizzo della funzione
MOV EBX, 0;
iterator:
MOV EAX, DWORD PTR [args];
PUSH EAX;
ADD EBX, 1;
ADD EAX, 4;
CMP EBX, DWORD PTR argc;
JNE iterator;
MOV EAX, ADDress;
CALL EAX;
MOV [ret], EAX;
RET 0;
argomenti virgola come sono galleggianti passava?
In pila, come tutto il resto. PS: non hai bisogno di caricare il puntatore in 'EAX', puoi fare' call dword ptr [Address] '. Si noti inoltre che se si utilizza 'push' è necessario invertire l'ordine degli argomenti. – Jester
La convenzione di chiamata di solito dipende dalla lingua, dall'architettura e dal sistema operativo. Sui valori xxx in virgola mobile vengono inseriti nello stack in virgola mobile. – qznc
@qznc, nope nemmeno vicino. – Johan