Windows下编写汇编代码

工具:

NASM http://www.nasm.us/
ALINK

笔者自己打包了一个~懒得去官网下的可以直接去这里~哈哈
http://download.csdn.net/detail/chengyu779394084/9360709

编写一个hello world 的程序:

文件扩展名为asm

hello32.asm

extern MessageBoxA

section .text
global main

main:
    push dword 0
    push dword title
    push dword text
    push dword 0
    call MessageBoxA
    ret
section .data
title: db 'MessageBox', 0
text: db 'Hello World!', 0

MessageBoxA需要以下4个参数。

  • 父窗口句柄
  • 要显示的消息
  • 要显示的消息框标题
  • 要显示的消息框类型

现在我们只需要显示一个简单的消息框,只需要第1,4个参数为默认就行。

函数调用过程如下:

  • 要显示的消息:Hello World!
  • 要显示的消息框标题:MessageBox
  • 将参数按照从后往前的顺序入栈
  • 用call MessageBoxA 调用函数

运行示例:

1.用NASM加上-fwin32参数将代码汇编成.obj文件。
2.用ALINK生成可执行文件。成功生成时,屏幕上会显示Generating PE file hello32.exe。

运行命令:

nasm -fwin32 hello32.asm
alink -oPE hello32 win32.lib -entry main

Windows下编写汇编代码_第1张图片

在安装的时候需要注意:把alink的东西放到nasm目录下,要不然会找不到alink文件,生成不了.exe!!!

运行的时候需要把360杀毒关掉,要不然你生成的可执行文件会被当成木马导致被删除~就是这么坑爹啊~!!!

此时,就会生成hello32.exe。双击执行即可!

运行结果如下:

你可能感兴趣的:(windows,汇编)