您的位置:首页 > 其它

Windows 32位 汇编语法 [2] 程序入口、注释与换行

2011-08-30 18:13 375 查看
@1.程序结束与程序入口:

汇编源程序中没有一个main函数,程序员可以指定从代码段的任何一个地方开始执行,这个地方由程序最后一句end语句来指定:

end [开始地址]

这句语句同时表壳源程序结束,所有代码必须在end语句之前,例如:

end start

上述语句指定程序从start这个标号开始执行。

但是一个源程序不必非要指定入口标号,这时候可以把开始地址忽略不写,这种情况发生在编写多模块程序的单个模块的时候。当分开写多个程序模块时,每个模块的源程序中也可以包括.data,.data?,.const和.code段,结构就和上面的Win32 Hello World一样,只是其他模块最后的end语句必须不带开始地址。当最后把多个模块链接在一起的时候,只能有一个主模块指定入口地址,在多个模块中指定入口地址或者没有一个模块指定 了入口地址链接程序都会报错。

@2.注释和换行

举例——注释使用 ; 号

;这里是注释

call _PrintChar ;这里是注释

szChar db 'Hello, World;', odh, oah ;world后面的分号不是注释,后面的才是

当源程序的某一行过长,不得于阅读的时候,可以分行书写,分行的办法是在一行的最后用反斜杠(\)做换行符,如

invoke MessageBox,NULL,offset szText, offset szCaption, MB_OK

可以写为:

invoke MessageBox\

NULL,\

offset szText,\

offset szCaption,\

MB_OK
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: