기본적으로, 나는 이런 식으로 뭔가를 할 수 있도록하고 싶습니다 :인라인 어셈블리의 "call"명령에 문자열을 인수로 전달하는 방법은 무엇입니까?
//assume myFunction is defined and takes one argument that is an int
char * functionName = "myFunction";
int arg = 5;
__asm{
push a
call functionName
}
은 기본적으로 내가 그의 이름 문자열에 저장되어있는 함수를 호출합니다. 이것을하기위한 적절한 구문은 무엇입니까?
편집 : 우리는 적어도 직접적으로, 86 어셈블리
질문을 수정하십시오. char * _ 인수로 _single int가 무엇을 의미합니까? 중요한 세부 사항을 놓치셨습니까? 어떤 종류의 프로세서를보고 계십니까? 일반적인 아이디어 나 실제 x86과 같은 어셈블리 코드를 원하십니까? – dirkgently
샘플을 이해할 수 없습니다. 호출은 문자열이 될 수 없으며 함수 포인터에 연결되어야합니다. 함수를 호출하려면 함수에 대한 포인터를 가져와야합니다. 한 가지 가능성은 자신의 DLL에서 GetProcAddr을 사용하는 것입니다. –
혼란에 빠져서 죄송합니다. 함수가 int 형의 인수 하나를 취한다는 것을 의미합니다. 호출되는 함수는 중요하지 않습니다. 왜 스택에 "a :"를 넣을지를 설명하는 것입니다. –