琢⽯成器――windows环境下32位汇编语⾔程序设计(第三
版)笔记
琢⽯成器――windows环境下32位汇编语⾔程序设计(第三版)笔记
2011年12⽉20⽇
基础篇
第1章 背景知识 1
1.1 Win32的软硬件平台
1.1.1 80x86系列处理器简史
1.1.2 Windows的历史
1.1.3 Win32平台的背后--Wintel联盟
1.2 Windows的特⾊
1.3 必须了解的基础知识
1.3.1 80x86处理器的⼯作模式
1.3.2 Windows的内存管理
1.3.3 Windows的特权保护
第2章 准备编程环境
2.1 Win32可执⾏⽂件的开发过程
2.2 编译器和链接器
2.2.1 MASM系列
2.2.2 TASM系列
2.2.3 其他编译器
2.2.4 MASM,TASM还是NASM
2.2.5 我们的选择--MASMSDK软件包
2.3 创建资源
2.3.1 资源编译器的使⽤
2.3.2 所见即所得的资源编辑器
2.4 make⼯具的⽤法
2.4.1 make⼯具是什么
2.4.2 nmake的⽤法
2.4.3 描述⽂件的语法
2.5 获取资料
2.5.1 Windows资料的来源
2.5.2 Intel处理器资料
2.6 构建编程环境
2.6.1 IDE还是命令⾏
2.6.2 本书推荐的⼯作环境
2.6.3 尝试编译第⼀个程序
第3章 使⽤MASM
3.1 Win32汇编源程序的结构
3.1.1 模式定义
3.1.2 段的定义
3.1.3 程序结束和程序⼊⼝
3.1.4 注释和换⾏
3.2 调⽤API
3.2.1 API是什么
3.2.2 调⽤API
3.2.3 API参数中的等值定义
3.3 标号、变量和数据结构
3.3.1 标号
3.3.2 全局变量
3.3.3 局部变量
3.3.4 数据结构
3.3.5 变量的使⽤
3.4 使⽤⼦程序
3.4.1 ⼦程序的定义
3.4.2 参数传递和堆栈平衡
3.5 ⾼级语法
3.5.1 条件测试语句
3.5.2 分⽀语句
3.5.3 循环语句
3.6 代码风格
3.6.1 变量和函数的命名
3.6.2 代码的书写格式
3.6.3 代码的组织
初级篇
第4章 第⼀个窗⼝程序
4.1 开始了解窗⼝
4.1.1 窗⼝是什么
4.1.2 窗⼝界⾯
4.1.3 窗⼝程序是怎么⼯作的
4.2 分析窗⼝程序
4.2.1 模块和句柄
4.2.2 创建窗⼝
4.2.3 消息循环
4.2.4 窗⼝过程
4.3 窗⼝间的通信
4.3.1 窗⼝间的消息互发
4.3.2 在窗⼝间传递数据
4.3.3 SendMessage和PostMessage函数的区别 第5章 使⽤资源
5.1 菜单和加速键
5.1.1 菜单和加速键的组成
5.1.2 菜单和加速键的资源定义
5.1.3 使⽤菜单和加速键
5.2 图标和光标
5.2.1 图标和光标的资源定义
5.2.2 使⽤图标和光标
5.3 位图
5.3.1 位图简介
5.3.2 在资源中定义位图
5.4 对话框
5.4.1 对话框简介
5.4.2 对话框的资源定义
5.4.3 使⽤对话框
5.4.4 在对话框中使⽤⼦
5.4.4 窗⼝控件
5.5 字符串资源
5.6 版本信息资源
5.6.1 版本信息资源的定义
5.6.2 在程序中检测版本信息
5.7 ⼆进制资源和⾃定义资源
5.7.1 使⽤⼆进制资源
5.7.2 使⽤⾃定义资源
第6章 定时器和Windows时间
6.1 定时器
6.1.1 定时器简介
6.1.2 定时器的使⽤⽅法
6.2 Windows时间
6.2.1 Windows时间的获取和设置
6.2.2 计算时间间隔
第7章 图形操作
7.1 GDI原理
7.1.1 GDI程序的结构
7.1.2 设备环境
7.1.3 ⾊彩和坐标
7.2 绘制图形
7.2.1 画笔和画刷
7.2.2 绘制像素点
7.2.3 绘制图形
7.2.4 绘图模式
7.3 创建和使⽤位图
7.3.1 ⼀个使⽤位图的时钟例⼦
7.3.2 创建和使⽤位图
7.3.3 使⽤设备⽆关位图
7.4 块传送操作
7.4.1 块传送⽅式
7.4.2 块传送函数
7.5 区域和路径
7.5.1 使⽤区域
7.5.2 使⽤路径
界⾯篇
第8章 通⽤对话框
8.1 通⽤对话框简介
8.2 使⽤通⽤对话框
8.2.1 “打开”⽂件和“保存”⽂件对话框 8.2.2 字体选择对话框
8.2.3 “颜⾊选择”对话框
8.2.4 “查”和“替换”⽂本对话框
8.2.5 “页⾯设置”对话框
8.2.6 “浏览⽬录”对话框
第9章 通⽤控件
9.1 通⽤控件简介
9.1.1 通⽤控件的分类
9.1.2 使⽤通⽤控件
9.2 使⽤状态栏
windows程序设计第7版pdf 9.2.1 创建状态栏
9.2.2 状态栏的控制消息
9.2.3 在状态栏上显⽰菜单提⽰信息
9.3 使⽤⼯具栏
9.3.1 创建⼯具栏
9.3.2 ⼯具栏的控制消息
9.3.3 ⼯具栏的通知消息
9.4 使⽤Richedit控件
9.4.1 创建Richedit控件
9.4.2 Richedit控件的控制消息
9.4.3 Richedit控件的通知消息
9.5 窗⼝的⼦类化
9.5.1 什么是窗⼝的⼦类化
9.5.2 窗⼝⼦类化的实现
9.6 控件的超类化
9.6.1 什么是控件的超类化
9.6.2 控件超类化的实现
系统篇
第10章 内存管理和⽂件操作
10.1 内存管理
10.1.1 内存管理基础
10.1.2 内存的当前状态
10.1.3 标准内存管理函数
10.1.6 其他内存管理函数
10.2 ⽂件操作
10.2.1 Windows的⽂件I/O
10.2.2 创建和读写⽂件
10.2.3 查⽂件
10.2.4 ⽂件属性
10.2.5 其他⽂件操作
10.3 驱动器和⽬录
10.3.1 逻辑驱动器操作
10.3.2 ⽬录操作
10.4 内存映射⽂件
10.4.1 内存映射⽂件简介
10.4.2 使⽤内存映射⽂件
第11章 动态链接库和钩⼦
11.1 动态链接库
11.1.1 动态链接库的概念
11.1.2 编写动态链接库
11.1.3 使⽤动态链接库
11.1.4 动态链接库中的数据共享 11.1.5 在VC++中使⽤动态
11.1.5 链接库
11.2 Windows钩⼦
11.2.1 什么是Windows钩⼦
11.2.2 远程钩⼦的安装和使⽤
11.2.3 ⽇志记录钩⼦
第12章 多线程
12.1 进程和线程
12.2 多线程编程
12.2.1 ⼀个单线程的“问题程序”
12.2.2 多线程的解决⽅法
12.2.3 与线程有关的函数
12.3 使⽤事件对象控制线程
12.3.1 事件
12.3.2 等待事件
12.3.3 进⼀步改进计数程序
12.4 线程间的同步
12.4.1 产⽣同步问题的原因
12.4.2 各种⽤于线程间同步的对象 第13章 过程控制
13.1 环境变量和命令⾏参数
13.1.1 环境变量
13.1.2 命令⾏参数
13.2 执⾏可执⾏⽂件
13.2.1 ⽅法⼀:Shell调⽤
13.2.2 ⽅法⼆:创建进程
13.3 进程调试
13.3.1 获取运⾏中的进程句柄
13.3.2 读写进程的地址空间
13.3.3 调试API的使⽤
13.4 进程的隐藏
13.4.1 在Windows 9x中隐藏进程 13.4.2 Windows NT中的远程线程 第14章 异常处理
14.1 异常处理的⽤途
14.2 使⽤筛选器处理异常
14.3 使⽤SEH处理异常
14.3.1 注册回调函数
14.3.2 异常处理回调函数
14.3.3 SEH链和异常的传递
14.3.4 展开操作(Unwinding)
应⽤篇
第15章 注册表和INI⽂件
15.1 注册表和INI⽂件简介
15.2 INI⽂件的操作
15.2.1 INI⽂件的结构
15.2.2 管理键值
15.2.3 管理⼩节
15.2.4 使⽤不同的INI⽂件
15.3 对注册表的操作
15.3.1 注册表的结构
15.3.2 管理⼦键
15.3.3 管理键值
15.3.4 ⼦键和键值的枚举
15.3.5 注册表应⽤举例
第16章 WinSock接⼝和⽹络编程
16.1 Windows Socket接⼝简介
16.2 Windows Socket接⼝的使⽤
16.2.1 IP地址的转换
16.2.2 套接字
16.2.3 ⽹络应⽤程序的⼀般⼯作流程
16.2.4 监听、发起连接和接收连接
16.2.5 数据的收发
16.2.6 ⼀个最简单的TCP服务端程序
16.3 TCP应⽤程序的设计
16.3.1 通信协议和⼯作线程的设计
16.3.2 TCP聊天室例⼦--服务器端
16.3.3 TCP聊天室例⼦--客户端
16.3.4 以⾮阻塞⽅式⼯作的TCP聊天室客户端 16.3.5 其他常⽤函数
第17章 PE⽂件
17.1 PE⽂件的结构
17.1.1 概论
17.1.2 DOS⽂件头和DOS块
17.1.3 PE⽂件头(NT⽂件头)
17.1.4 节表和节
17.2 导⼊表
17.2.1 导⼊表简介
17.2.2 导⼊表的结构
17.2.3 查看PE⽂件导⼊表举例
17.3 导出表
17.3.1 导出表的结构
17.3.2 查看PE⽂件导出表举例
17.4 资源
17.4.1 资源简介
17.4.2 资源的组织⽅式
17.4.3 查看PE⽂件中的资源列表举例
17.5 重定位表
17.5.1 重定位表的结构
17.5.2 查看PE⽂件的重定位表举例
17.6 应⽤实例
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论