Steward
分享是一種喜悅、更是一種幸福
程式語言 - Wine - Assembly (x64) - Hello, world!
參考資訊:
http://www.winprog.org/tutorial/start.html
https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-messagebox
經典的Hello, world!程式框架總是能夠讓人細心品味一款程式語言的美好,司徒就使用一個簡單的Message對話盒來展現Hello, world!框架
main.S
.intel_syntax noprefix
.global WinMain
.extern MessageBoxA
.extern ExitProcess
.section .data
szCaption: .asciz ""
szContent: .asciz "Hello, world!"
.section .text
WinMain:
sub rsp, 40
xor ecx, ecx
lea rdx, [rip + szContent]
lea r8, [rip + szCaption]
xor r9, r9
call MessageBoxA
xor eax, eax
add rsp, 40
ret
編譯、執行
$ winegcc main.S -o main.exe $ WINEPREFIX=~/.wine_x64 wine main.exe.so