Windows汇编调用printf
2023-12-14 09:29:58
VS2022 汇编
项目右键 生成依赖项 生成自定义 勾选masm
链接器 高级 入口点 main
X86
.686
.model flat,stdcall
option casemap:none
includelib ucrt.lib
includelib legacy_stdio_definitions.lib
EXTERN printf:proc
.data
szFormat db '%s',0
szStr db 'hello',0
.code
main proc
lea eax, szStr
push eax
lea eax, szFormat
push eax
call printf
add esp,8
mov eax,eax
ret
main endp
end
x64
includelib ucrt.lib
includelib legacy_stdio_definitions.lib
EXTERN printf:proc
.data
szFormat db '%s',0
szHello db 'HelloWorld',0
.code
main proc
sub rsp,28h
lea rdx, szHello
mov rcx,offset szFormat
call printf
add rsp,28h
ret
main endp
end
cpp文件调用汇编函数
要注意汇编文件的项类型正确配置
;includelib ucrt.lib
includelib legacy_stdio_definitions.lib
EXTERN printf:proc
.data
szFormat db '%s',0
szHello db 'Hello X64',0
.code
x64_print proc
sub rsp,28h
lea rcx, szHello
call printf
mov eax,666
add rsp,28h
ret
x64_print endp
end
extern "C" int x64_print();
int main()
{
x64_print();
return 0;
}
文章来源:https://blog.csdn.net/xue_nuo/article/details/134901341
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!