|
|
|
开发板专卖——淘宝店 |
|
|
|
|
|
|
看程序的艺术(或曰“技术”) 程序匠人 发表于 2005-6-3 22:21:00 阅读全文 | 回复(1) | 引用通告 | 编辑 |
|
看程序的艺术(或曰“技术”)
1、善用原理图——“顺藤摸瓜”大法 顺着程序的流程一边看一边画原理图,一遍看完后,原理图出来了,程序的大体设计思想和设计结构也就凸现出来了。
2、建立RAM分配表——“按图索骥”大法 将所有的RAM的功能登记下来,当你再看到程序对某个已经登记过的RAM单元操作时,就能猜出大概的功能来。
3、模块化——“庖丁解牛”大法 看一个8K的大程序是很累人的,而看8个1K的小程序则似乎容易些。 要将一个看似完整的程序分割开来,其实并不难,只要你找到程序的缝隙,一刀下去,程序就分开了。 缝隙在哪里呢,就在“JMP”、“RET”之类指令的后面。那里相当于两条肋骨的间隙。
后记:其实99%的程序都不值一看——这些程序在完成其特定的功能方面,也许是称职的,但是从美学的意义上来说,则毫无“艺术”可言。所以看这样的程序仅是一种劳苦的技术活,而不是艺术活。 还要说一点的是,所谓盗亦有道。 高明者看他人的程序仅为了了解他人的编程思想, 中庸者看他人的程序是为了学习他人的编程技巧, 蠢笨者看他人的程序是为了抄袭盗版, 无耻者看他人的程序却为了解密篡改。 |
看《匠人手记》,与匠人同行!北航出版,正在热卖!
|
回复:看程序的艺术(或曰“技术”) cxjr发表评论于2005-6-3 22:26:00 个人主页 | 引用 | 返回 | 删除 | 回复 |
|
匠人出道时,曾经用了两个月的时间研读一位前辈高手的汇编程序(8K)
他老人家的程序没有一句注释,而且所有的寄存器都没有定义名称(直接引用地址),而且所有的标号都没有意义(纯粹是用一些字母和数字组合),而且没有参考文档,而且没有指点(呵呵,是偷看的!)
看了2个月,只看懂了1/3左右,感觉自己功力大增了,所花的时间和经历还是值得的。
当然,现在如果还有人让我读这种程序的话,我宁愿重写一个。
|
看《匠人手记》,与匠人同行!北航出版,正在热卖!
|
|
|
|
广告5号位 [投放] |
|
| |
|