029_《编程高手箴言》

《编程高手箴言》

Delphi 教程 系列书籍 (029) 《编程高手箴言》 网友(邦)整理 EMail: shuaihj@163.com

下载地址:

Part1

Part2

  • 作者: 梁肇新
  • 出版社:电子工业出版社
  • ISBN:7505391410
  • 上架时间:2003-10-29
  • 出版日期:2003 年10月
  • 开本:16开
  • 页码:500
  • 版次:1-1

内容简介

“我就是程序,程序就是我。” 梁肇新 《编程高手箴言》这本书就是梁肇新自己十余年来编程经验的集结。在名人出书成为热潮的这几年中,拥有丰富经历和感悟的梁肇新却没有跟风,这本《箴言》是他的第一本著作,可谓厚积薄发。全书通篇没有时髦的IT新名词或新思想,而是踏踏实实地对很多知识进行了深刻的剖析,这有助于为编程打下坚实的根基。只有这样,才能使开发者在飞速变化的软件领域里免于雾里看花,才能更快更深地认识许多新问题、新知识,也才能更从容地应对未来之挑战。相信这本书对广大程序员大有裨益,无论是从技术角度还是从职业生涯指导角度。

目录

第1章 程序点滴 1

1.1 程序≠软件 1

1.1.1 商业软件门槛的形成 2

1.1.2 认清自己的发展 4

1.2 高手是怎样练成的 5

1.2.1 高手成长的六个阶段 5

1.2.2 初级程序员和高级程序员的区别 7

1.2.3 程序员是吃青春饭的吗 9

1.3 正确的入门方法 11

1.3.1 规范的格式是入门的基础 13

1.3.2 调试的重要性 17

1.4 开放性思维 18

1.4.1 动态库的重要性 19

1.4.2 程序设计流程 20

1.4.3 保证程序可预测性 21

第2章 认识cpu 23

2.1 8位微处理器回顾 23

2.2 16位微处理器 24

2.2.1 组成结构 24

2.2.2 8086寄存器组成 25

2.2.3 内存的寻址 26

2.2.4 中断处理 27

2.3 32位微处理器 29

2.3.1 寄存器组成 29

2.3.2 保护模式 32

2.3.3 80386的寻址方式 32

2.4 【实例】:在dos实模式下读取4gb内存代码分析 36

2.4.1 程序的意义 37

2.4.2 程序代码 37

2.4.3 程序原理 41

2.4.4 程序中的一些解释 42

第3章 windows运行机理 44

3.1 内核分析 44

3.1.1 运行机理 44

3.1.2 le文件的格式 53

3.1.3 vxd的设计实现 59

3.1.4 【实例】:cpu降温程序代码分析 65

3.2 消息的运行方式 82

3.2.1 认识消息 82

3.2.2 windows系统中消息的运作方式 84

3.2.3 消息处理过程实例 87

3.3 gdi的结构和组成 89

3.3.1 gdi的组成 89

3.3.2 gdi和directdraw的关系 91

3.4 线程的机制 93

3.4.1 线程的工作方式 93

3.4.2 线程与gdi的冲突:死机的主要原因 94

3.4.3 线程的内存泄漏的主要原因 96

3.4.4 进程管理 98

3.4.5 同步机制 100

3.5 pe结构分析 103

3.5.1 pe头标 103

3.5.2 表节 113

3.5.3 pe文件引入 119

3.5.4 pe文件引出 125

3.5.5 pe文件资源 129

第4章 编程语言的运行机理 133

4.1 汇编的原理 133

4.1.1 指令系统 133

4.1.2 汇编与win api的接口方法 141

4.1.3 【实例】:自定义程序的入口点 145

4.2 高级语言的原理 151

4.2.1 c/c++的原理 151

4.2.2 解释语言的原理 165

4.2.3 【实例】:用c实现简单的basic语言环境 165

4.3 c、c++的学习方式 187

4.3.1 从basic到c 187

4.3.2 c、汇编、api的关系 187

4.3.3 接口的建立方法 190

4.4 挂钩技术 201

4.4.1 windows上c的挂钩 201

4.4.2 c++的挂钩技术 213

第5章 代码的规范和风格 220

5.1 环境的设置 220

5.1.1 集成环境的设置 220

5.1.2 tab值的设置 221

5.1.3 编译环境的设置 222

5.1.4 设置herosoft.dsm宏 224

5.2 变量定义的规范 227

5.2.1 变量的命名规则 227

5.2.2 变量定义的地方规定 228

5.2.3 变量的对齐规定 229

5.3 代码对齐方式、分块、换行的规范 230

5.4 快速的代码整理方法 232

5.5 注释的规范 233

5.6 头文件的规范 236

5.7 建议采用的一些规则 236

5.8 可灵活运用的一些规则 238

5.9 标准化代码示例 239

5.10 成对编码规则 243

5.10.1 成对编码的实现方法 243

5.10.2 成对编码中的几点问题 248

5.11 正确的成对编码的工程编程方法 251

5.11.1 编码前的工作 252

5.11.2 成对编码的工程方法 255

5.11.3 两个问题的解释 260

第6章 分析方法 266

6.1 分析概要 266

6.1.1 分析案例一:软件硬盘阵列 268

6.1.2 分析案例之二:游戏内存修改工具 274

6.2 接口的提炼 286

6.2.1 分离接口 286

6.2.2 参数分析 287

6.3 主干和分支 290

6.3.1 主干和分支分析举例 291

6.3.2 程序检验 300

6.4 是否对象化 301

6.5 是否dll化 307

6.5.1 dll的建立和调用 307

6.5.2 dll动态与静态加载的比较 322

6.5.3 dll中函数的定义 322

6.6 com的结构 324

6.7 几种软件系统的体系结构分析 326

6.7.1 播放器的解码组成分析 326

6.7.2 豪杰大眼睛的体系结构 330

6.7.3 windows 9x体系结构 331

第7章 调试方法 333

7.1 调试要点 333

7.1.1 调试和编程同步 333

7.1.2 汇编代码确认 334

7.1.3 win32的debug实现方法 342

7.2 基本调试实例分析 343

7.3 多线程应用的调试 350

7.4 非固定错误的调试 352

7.4.1 激活调试环境 352

7.4.2 正确区分错误的类型 356

7.4.3 常见的偶然错误 357

第8章 内核优化 358

8.1 数据类型的认识 358

8.2 x86优化编码准则 359

8.2.1 通用的x86优化技术 359

8.2.2 通用的amd-k6处理器x86代码优化 361

8.2.3 amd-k6处理器整数x86代码优化 364

8.3 mmx指令的优化 368

8.3.1 mmx的寄存器介绍 368

8.3.2 mmx的工作原理 368

8.3.3 mmx的检测 369

8.3.4 mmx指令的介绍 370

8.4 mmx的实例一:图像的淡入淡出 394

8.4.1 目的 394

8.4.2 解决方法 394

8.4.3 分析 394

8.4.4 初步实现 395

8.4.5 mmx的优化实现 401

8.5 mmx的实例二:mmx类的实现方法 407

8.5.1 实现方法分析 407

8.5.2 实现步骤 407

8.5.3 检测过程 410

8.5.4 总结 416

时间: 2024-10-09 18:09:04

029_《编程高手箴言》的相关文章

如何成为编程高手

我们都有兴趣成为象棋高手.围棋高手.散打高手.游戏高手,有没有人愿意成为编程高手? 很多三十几岁的程序员就不再编写程序,这其中有很多因素:编程的理念.工具日新月异,程序员需要经常更新自己的知识结构,到三十多岁的时候,发现自己的学习能力开始退步,学习的动力也不足,而以前的经验已经积累到一定程度,凭着这些经验也足以应付大部分的技术问题,于是动嘴的时间多了,动手的时间少了,慢慢地角色发生了改变,成为了管理者或专家.咨询顾问之类.从开始学习编程到逐步退出编程,大约是10年的时间.十年的程序员是不是编程高

成为flash编程高手的八大奥秘一

1.[杂谈五] 成为编程高手的八大奥秘 不知不觉做软件已经做了十年,有成功的喜悦,也有失败的痛苦,但总不敢称自己是高手,因为和我心目中真正的高手们比起来,还差得太远.世界上并没有成为高手的捷径,但一些基本原则是可以遵循的. 1.扎实的基础 数据结构.离散数学.编译原理,这些是所有计算机科学的基础,如果不掌握它们,很难写出高水平的程序.程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论.不要一开始就去学OOP,即使你再精通OOP,遇到一些基本算法

NASA 悬赏 10 万招编程高手 世界最令人头疼的编程语言

美国宇航局(NASA)刚刚宣布设立多个奖金来招募编程高手,目的是改进流体力学模拟软件 FUN3D. 目前,包括 NASA.波音以及洛克希德等航空巨头都在使用 FUN3D 来模拟测试和优化航空器设计. 此次,NASA 为技术大牛们准备了丰厚的奖励,优化效率最高的两人将分别获得 1.5 万美元和 1 万美元的现金回报(约合 10 万和 6.9 万人民币),而其余给出普通改进方案的人也会得到一定的奖励. 外媒提醒称,想要优化 FUN3D 其实并不容易,首先只有美国公民才能免费获得这款软件的源代码.此外

各位编程高手,怎么从Web上获取流媒体密码(ss_key)啊?

问题描述 各位编程高手,怎么从Web上获取流媒体密码(ss_key)啊? 解决方案 解决方案二:从"从Web上"是什么意思?

程序员:如何成为编程高手并以此创业

此篇文章出自雷军之手,是他为软件开发2.0技术大会准备的演讲稿,但由于某些原因没有派上用场.这里跟大家分享下,对我们程序员来说还是大有裨益的. 每个IT企业,尤其是初创企业,非常苦恼:找不到好的程序员.现在大学.软件学院及各种培训机构,每年培养几十万的程序员,毕业的每个人都有同样困恼:找不到好的工作.问题出在哪里呢?其实,企业需要的是不是刚会写程序的人,需要来了就能干活的人,尤其能把活干好的人.而刚毕业的大学生多半刚学会如何写程序,的确很难企业需求. 企业到底需要什么样的程序员,一个刚入门的程序

要想成为编程高手就应该具备的八个条件

1.扎实的基础 数据结构.离散数学.编译原理,这些是所有计算机科学的基础,如果不掌握它们,很难写出高水平的程序.程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论.不要一开始就去学OOP,即使你再精通OOP,遇到一些基本算法的时候可能也会束手无策.因此多读一些计算机基础理论方面的书籍是非常有必要的. 2.丰富的想像力 不要拘泥于固定的思维方式,遇到问题的时候要多想几种解决问题的方案,试试别人从没想过的方法.丰富的想像力是建立在丰富的知识的基础上

怎样成为一个编程高手

在过去5年中,我面试了数百名IT工程师,我认为很值得把我的面试IT工程师的经验同大家分享.这能够: ●帮助人们为他们的下一个面试准备 ●帮助IT工程师找到合适的工作. ●帮助IT工程师创造更好的环境. 我们通过两个方面面试IT工程师: ●技术技能:包括理论和实践技能以及经验等. ●非技术技能:性格,沟通技巧,是否能够融入我们的文化环境. 第1部分中,我将主要从技能部分讲述. 1.一个IT工程师应该具有的技能 我认为实用技能包含3个方面,如图1所示:               图1 这些都是很重

网络编程高手请进来,Socket发送图片错误~~~

问题描述 发送端主要代码:#region用Socket发送图片privatevoidtime(objecto){IPAddresssIP=IPAddress.Parse("127.0.0.1");IPEndPointssIP=newIPEndPoint(sIP,8001);Sockets=newSocket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);try{s.Connect(sIP,8001);}ca

维密超模竟是编程高手:开发近10个APP

被誉为地表最正工程师的史考特.(图/取自当事人脸书)据台湾媒体报道,工程师经常给人"埋首工作"的印象,不过下面这位签约"维多利亚的秘密"的顶级名模,可能会让你跌破眼镜.是的,斯科特(Lyndsey Scott)不只外貌出色,还是个撰写程式的高手,如此才貌双全的她,让不少网友看了都大叹:是要逼死谁啊! 工程师,走秀,写程式,app,地表最正工程师 <36kr>报导,斯科特今年29岁,她白天为众多时尚品牌走台步,晚上则戴上眼镜,摇身一变成为工程师,不只整夜和