用VC重写汇编程序

zzz在学习 Windows环境下32位汇编语言程序设计 这本书,获益匪浅,但是里面程序都是汇编写的,看着头大,所以自己试验一下用VC重写一下例程,发现确实是能用,但是最终生成的程序和汇编直接写成的程序还是有很大区别的,我是用的控制台方式重写的,编译完成以后发现开一个程序竟然会有两个窗口,一个是我写的窗口,一个是控制台的窗口,看来VC在我们自己的代码外面又额外的加了很多东西啊。
改写的是firstwindow这个程序,汇编源代码如下
Code
VC重写的代码如下
Code
基本上是把汇编的代码重写了一下,重写的过程中需要变量类型和函数返回类型的问题,因为在汇编下用到的数据类型无非db dw dd几种,很简单,但是在VC下就需要准确确定变量和函数返回类型,需要注意的地方如下:
LRESULT CALLBACK _procWinMain(HWND,UINT,WPARAM,LPARAM); 消息处理函数的返回值为LRESULT CALLBACK,传入的变量类型依次为HWND,UINT,WPARAM,LPARAM
HINSTANCE hInstance;实例的变量类型为HINSTANCE
HWND hWinMain;窗口句柄类型为HWND
VC例程实现的功能和汇编的不同,被我改动了一下,VC实现的只是用户在关闭窗口时会弹出一个提示对话框,然后关闭窗口,没有汇编程序的在窗口输出文本的功能。
posted @ 2009-07-24 16:33  认真做人,认真做事  阅读(820)  评论(0编辑  收藏  举报