编程高手箴言(梁肇新完整pdf版)
内容简介: 本书是作者十余年编程生涯中的技术和经验的总结。内容涵盖了从认识CPU、Windows运行机理、编程语言的运行机理,到代码的规范和风格、分析方法、调试方法和内核优化,内有作者对许多问题的认知过程和透彻的分析,以及优秀和精彩的编程经验。 第1章 程序点滴 1.1 程序≠软件(1) 1.1 程序≠软件(2) 1.2 高手是怎样练成的(1) 1.2 高手是怎样练成的(2) 1.2 高手是怎样练成的(3) 1.3 正确的入门方法(1) 1.3 正确的入门方法(2) 1.3 正确的入门方法(3) 1.4 开放性思维(1) 1.4 开放性思维(2) 第2章 认识CPU 2.1 8位微处理器回顾/2.2 16位微处理器(1) 2.2 16位微处理器(2) 2.3 32位微处理器(1) 2.3 32位微处理器(2) 2.3 32位微处理器(3) 2.4 【实例】:在DOS实模式下读取4GB内存(1) 2.4 【实例】:在DOS实模式下读取4GB内存(2) 第3章 Windows运行机理 3.1 内核分析(1) 3.1 内核分析(2) 3.1 内核分析(3 ) 3.1 内核分析(4) 3.1 内核分析(5) 3.1 内核分析(6) 3.1 内核分析(7) 3.1 内核分析(8) 3.1 内核分析(9) 3.1 内核分析(10) 3.1 内核分析(11) 3.1 内核分析(12) 3.1 内核分析(13) 3.2 消息的运行方式(1) 3.2 消息的运行方式(2) 3.2 消息的运行方式(3) 3.3 GDI的结构和组成(1) 3.3 GDI的结构和组成(2) 3.4 线程的机制(1) 3.4 线程的机制(2) 3.4 线程的机制(3) 3.4 线程的机制(4) 3.4 线程的机制(5) 3.4 线程的机制(6) 3.4 线程的机制(7) 3.5 PE结构分析(1) 3.5 PE结构分析(2) 3.5 PE结构分析(3) 3.5 PE结构分析(4) 3.5 PE结构分析(5) 3.5 PE结构分析(6) 3.5 PE结构分析(7) 第4章 编程语言的运行机理 第5章 代码的规范和风格 5.1 环境的设置 5.1.1 集成环境的设置 5.1.2 TAB值的设置 5.1.3 编译环境的设置 5.1.4 设置herosoft.dsm宏 5.2 变量定义的规范 5.2.1 变量的命名规则 5.2.2 变量定义的地方规定 5.2.3 变量的对齐规定 5.3 代码对齐方式、分块、换行的规范 5.4 快速的代码整理方法 5.5 注释的规范 5.6 头文件的规范 5.7 建议采用的一些规则 5.8 可灵活运用的一些规则 5.9 标准化代码示例 5.10 成对编码规则 5.10.1 成对编码的实现方法 5.10.2 成对编码中的几点问题 5.11 正确的成对编码的工程编程方法 5.11.1 编码前的工作 5.11.2 成对编码的工程方法 5.11.3 两个问题的解释 第6章 分析方法 6.1 分析概要 6.1.1 分析案例一:软件硬盘阵列 6.1.2 分析案例之二:游戏内存修改工具 6.2 接口的提炼 6.2.1 分离接口 6.2.2 参数分析 6.3 主干和分支 6.3.1 主干和分支分析举例 6.3.2 程序检验 6.4 是否对象化 6.5 是否DLL化 6.5.1 DLL的建立和调用 6.5.2 DLL动态与静态加载的比较 6.5.3 DLL中函数的定义 6.6 COM的结构 6.7 几种软件系统的体系结构分析 6.7.1 播放器的解码组成分析 6.7.2 豪杰大眼睛的体系结构 6.7.3 Windows 9x体系结构 第7章 调试方法 7.1 调试要点 7.1.1 调试和编程同步 7.1.2 汇编代码确认 7.1.3 Win32的Debug实现方法 7.2 基本调试实例分析 7.3 多线程应用的调试 7.4 非固定错误的调试 7.4.1 激活调试环境 7.4.2 正确区分错误的类型 7.4.3 常见的偶然错误 第8章 内核优化 8.1 数据类型的认识 8.2 X86优化编码准则 8.2.1 通用的X86优化技术 8.2.2 通用的AMD-K6处理器x86代码优化 8.2.3 AMD-K6处理器整数x86代码优化 8.3 MMX指令的优化 8.3.1 MMX的寄存器介绍 8.3.2 MMX的工作原理 8.3.3 MMX的检测 8.3.4 MMX指令的介绍 8.4 MMX的实例一:图像的淡入淡出 8.4.1 目的 8.4.2 解决方法 8.4.3 分析 8.4.4 初步实现 8.4.5 MMX的优化实现 8.5 MMX的实例二:MMX类的实现方法 8.5.1 实现方法分析 8.5.2 实现步骤 8.5.3 检测过程 8.5.4 总结 ) 3.1 内核分析(4) 3.1 内核分析(5) 3.1 内核分析(6) 3.1 内核分析(7) 3.1 内核分析(8) 3.1 内核分析(9) 3.1 内核分析(10) 3.1 内核分析(11) 3.1 内核分析(12) 3.1 内核分析(13) 3.2 消息的运行方式(1) 3.2 消息的运行方式(2) 3.2 消息的运行方式(3) 3.3 GDI的结构和组成(1) 3.3 GDI的结构和组成(2) 3.4 线程的机制(1) 3.4 线程的机制(2) 3.4 线程的机制(3) 3.4 线程的机制(4) 3.4 线程的机制(5) 3.4 线程的机制(6) 3.4 线程的机制(7) 3.5 PE结构分析(1) 3.5 PE结构分析(2) 3.5 PE结构分析(3) 3.5 PE结构分析(4) 3.5 PE结构分析(5) 3.5 PE结构分析(6) 3.5 PE结构分析(7) 第4章 编程语言的运行机理 第5章 代码的规范和风格 5.1 环境的设置 5.1.1 集成环境的设置 5.1.2 TAB值的设置 5.1.3 编译环境的设置 5.1.4 设置herosoft.dsm宏 5.2 变量定义的规范 5.2.1 变量的命名规则 5.2.2 变量定义的地方规定 5.2.3 变量的对齐规定 5.3 代码对齐方式、分块、换行的规范 5.4 快速的代码整理方法 5.5 注释的规范 5.6 头文件的规范 5.7 建议采用的一些规则 5.8 可灵活运用的一些规则 5.9 标准化代码示例 5.10 成对编码规则 5.10.1 成对编码的实现方法 5.10.2 成对编码中的几点问题 5.11 正确的成对编码的工程编程方法 5.11.1 编码前的工作 5.11.2 成对编码的工程方法 5.11.3 两个问题的解释 第6章 分析方法 6.1 分析概要 6.1.1 分析案例一:软件硬盘阵列 6.1.2 分析案例之二:游戏内存修改工具 6.2 接口的提炼 6.2.1 分离接口 6.2.2 参数分析 6.3 主干和分支 6.3.1 主干和分支分析举例 6.3.2 程序检验 6.4 是否对象化 6.5 是否DLL化 6.5.1 DLL的建立和调用 6.5.2 DLL动态与静态加载的比较 6.5.3 DLL中函数的定义 6.6 COM的结构 6.7 几种软件系统的体系结构分析 6.7.1 播放器的解码组成分析 6.7.2 豪杰大眼睛的体系结构 6.7.3 Windows 9x体系结构 第7章 调试方法 7.1 调试要点 7.1.1 调试和编程同步 7.1.2 汇编代码确认 7.1.3 Win32的Debug实现方法 7.2 基本调试实例分析 7.3 多线程应用的调试 7.4 非固定错误的调试 7.4.1 激活调试环境 7.4.2 正确区分错误的类型 7.4.3 常见的偶然错误 第8章 内核优化 8.1 数据类型的认识 8.2 X86优化编码准则 8.2.1 通用的X86优化技术 8.2.2 通用的AMD-K6处理器x86代码优化 8.2.3 AMD-K6处理器整数x86代码优化 8.3 MMX指令的优化 8.3.1 MMX的寄存器介绍 8.3.2 MMX的工作原理 8.3.3 MMX的检测 8.3.4 MMX指令的介绍 8.4 MMX的实例一:图像的淡入淡出 8.4.1 目的 8.4.2 解决方法 8.4.3 分析 8.4.4 初步实现 8.4.5 MMX的优化实现 8.5 MMX的实例二:MMX类的实现方法 8.5.1 实现方法分析 8.5.2 实现步骤 8.5.3 检测过程 8.5.4 总结
用户评论