在C++项目里调用纯汇编模块
步骤
Step 1 创建Cpp
创建Main.cpp,代码如下:
#include <stdio.h>
#include <conio.h>
extern "C" void _cdecl Reverse(char*);
char chararray[17] = "So what is this?";
int main(int argc, char* argv[]) {
printf("%s \n", chararray);
Reverse(chararray);
printf("%s\n", chararray);
getchar();
return 0;
}
Step2 创建Asm
创建reverse.s
.586
.model flat,c
.stack 1024
.code
public Reverse
Reverse proc uses esi, \
arraychar:ptr
mov esi,arraychar
mov eax,0
push eax
.repeat
mov al,[esi]
push eax
inc esi
.until byte ptr [esi] == 0
mov esi,arraychar
.while eax != 0
pop eax
mov [esi],al
inc esi
.endw
Ret
Reverse endp
End
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。