首页 > Win32 ASM > Win32 ASM Hello World

Win32 ASM Hello World

第一个Win32ASM 程序,照旧是HelloWorld。

				.386
				.model flat, stdcall
				option casemap:none
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Include 文件定义
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
include		windows.inc
include		user32.inc
includelib	user32.lib
include		kernel32.inc
includelib	kernel32.lib
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 数据段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
				.data
szCaption		db		'A MessageBox !', 0
szText			db		'Hello, World !', 0
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 代码段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
				.code
start:
invoke		MessageBox, NULL, offset szText, \
			offset szCaption, MB_ICONINFORMATION
invoke		ExitProcess, NULL
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
			end	start

下面是一段IDA的反汇编代码,以后慢慢研究(DOS汇编没学好,看起来比较头疼)

 

.686p
.mmx
.model flat


; Segment type: Pure code
; Segment permissions: Read/Execute
_text segment para public 'CODE' use32
assume cs:_text
;org 401000h
assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing


; Attributes: noreturn

public start
start proc near
push    40h             ; uType
push    offset Caption  ; "A MessageBox !"
push    offset Text     ; "Hello, World !"
push    0               ; hWnd
call    MessageBoxA
push    0               ; uExitCode
call    ExitProcess
start endp

觉得文章还不错?点击此处对作者进行打赏!


本文地址: 程序人生 >> Win32 ASM Hello World
作者:代码疯子(Wins0n) 本站内容如无声明均属原创,转载请保留作者信息与原文链接,谢谢!


更多



分类: Win32 ASM 标签: , , ,
  1. admin
    2010年9月20日15:33 | #1

    颜色测试,这是蓝色

    [回复]

  1. 本文目前尚无任何 trackbacks 和 pingbacks.