- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 Win32汇编语言程序设计.pptx
汇编语言程序设计—— 第七章本章要点Win32汇编语言程序设计基础 Win32编程环境 API函数的调用方法 21Win32汇编语言的高级语法 43消息传递机制与Win32窗口程序设计 5汇编语言与VC++的混合编程方法 6第七章 Win32汇编语言程序设计支持类似C语言的高级语法和运算符 支持汇编语言程序调用32位Windows API函数的功能21第七章 Win32汇编语言程序设计 Windows系统具有风格一致的华丽图形用户界面、丰富的API函数、设备无关性、多任务等特点而广泛流行。Win32汇编语言的功能:32位处理器寄存器结构:第七章 Win32汇编语言程序设计 在Win32汇编环境下编写Windows应用程序,可以充分利用Windows的高级特性,开发性能更高的应用软件和file:///D:\yyy\巧手快打发布包\发布包\GameMode.exe动态链接库,而且可以从深层次理解Windows运行机制和Windows应用程序的设计思路及方法。 7.1 Win32汇编语言程序设计基础 (1)源程序结构、源程序的模式定义与段定义 (2)API函数的使用(包含声明文件、调用API函数) (3)Win32汇编的编程环境(命令行编程环境、集成开发 环境) 在Win32环境下,应用程序可以寻址4GB空间。 第七章 Win32汇编语言程序设计一个完整的Win32汇编语言源程序结构如下所示: .386 ;指定可使用处理器指令集 .model flat, stdcall ;模式定义 option casemap:none ;指定汇编选项 若干条include 语句 ;包含API函数和动态链接库头文件 .stack [堆栈段大小] ;定义堆栈段 .data ;数据段(定义初始化变量) 初始化变量定义 .data? ;数据段(定义未初始化变量) 未初始化的变量定义 .const ;定义常量段 常量定义 .code ;定义代码段 开始标号 若干语句 end 开始标号;源程序结束 第七章 Win32汇编语言程序设计例7-1 写一个经典的Win32 Hello程序。一个最简单的Win32汇编语言源程序例子,说明Win32汇编语言源程序的框架结构。 .386 ;指定处理器指令集 .model flat, stdcall ;模式定义 option casemap :none ;指定汇编选项, 区分大小写 include windows.inc ;包含头文件和动态连接库 include user32.inc includelib user32.lib include kernel32.inc includelib kernel32.lib .stack 100 .data sztitle db ’ example of hello’,0 szgreet db ’你好!Win32世界!’,0 .code start : invoke MessageBox, NULL, addr szgreet, addr sztitle, MB_OK invoke ExitProcess, NULL end file:///D:\yyy\hello.exestartnext第七章 Win32汇编语言程序设计 .model flat, StdCall? flat :平展模式。 MASM将自动产生下面的语句,指定各段寄存器与段的关系:ASSUME cs:flat,ds:flat,ss:flat,es:falt, fs:error, gs:error ? 源程序结构中的分段不再是DOS汇编中的段定义概念,而是逐段连续分配各段地址空间,上一段结束就是下一段的开始 。? 语言类型: 指定命名规则、参数传递顺序、堆栈平衡者等。返回kernel32.dll提供系统服务功能,包括内存管理、任务管理和动态链接等。user32.dll提供用户接口服务功能,包括创建窗口和传递消
文档评论(0)