一、格式统一之优点
不论采用何种程序语言,凡是共同工作、须相互研讨,或者在同一部门中,分担成
败责任者,应该有统一的程序写作方式。这样不仅便于沟通,提高程序的品质,且可避
免因某一程序员之离职或出缺所造成的后遗症。
良好的程序,应如一篇美妙的文学作品,其中有技巧,有意境。其功能不仅表现在
执行的效率上,也可以作为同行间学习、欣赏的媒介,这些都必须透过统一的格式达成。
尤其是把组合程序写作当作一种艺术创作,就必须经常相互观摩,如果没有共通的
格式规定,则这样的程序和「天书」可以说没有多大的分别。不论注释写得再好,一般
程序员自己都怕看自己的程序,更何况参阅他人的? 但若有统一的格式,养成习惯后,
不仅易看易懂,而且寻找、修改方便,写作也轻松省事。
二、规格
1,统一用大写字母,以利于阅读。
2,空格处应采用 TAB,齐头等距,一目了然。
3,标题之后立即改行输入,以便阅读。
4,每行不得超过70个字母,以免长度不等,画面紊乱。
5,注记位于指令后,在第五个 TAB的起点,空间不足时,可换行,但位置齐一。
6,所有缓冲器统一定义在程序之前,不可夹杂在程序中间。
7,除了需要作超过程序段的FAR CALL使用'PROC FAR'外,切勿使用'PROC NEAR '形式,
因这种写法毫无意义。
8,程序开始时,应有注记说明使用要点。
以下举例说明统一格式:
1: PAGE 60,132
2: TITLE [程序名],[程序员代号],[编号],[功能说明]
3:
4: DG SEGMENT PUBLIC
5: EXTRN BWSCA1:WORD,..
6: DG ENDS
7:
8: ..
9: ..
10: ..
11:
12: CG SEGMENT PUBLIC
13: EXTRN MMMM:NEAR,..
14: ..
15: PUBLIC XXXX,YYYY,..
16: ASSUME CS:CG,DS:DG,ES:DG
17: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
18: ; REM ............ ;
19: ; ...................... ;
20: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
21: START:
22: CLD
23: MOV AX,DG
24: MOV DS,AX
25: ..
26: ..
27: ..
28:
29:CG ENDS
30: END START
第一条的 PAGE 是供打印用的「保留指令」,表示每页所印的行数及列数。其后之
60,132 即为60行, 132个字符。
第二条的 TITLE 为供查阅之「保留指令」。
前述REM 注记栏中,应说明该段程序的功能、应用条件,以便其它程序员共同使用。
三、注记
注记的目的在于日后自己或他人能很容易地做程序修改、维护。因此所做描述当力
求详尽。不幸的是,不论多么精彩的文句,总有不足之处。因此,注记时需把握重点,
大体说来,程序需加以说明的,不外:
1,功能:做什么工作,需要何种先决条件。
2,参数:设些什么数据,以供本段程序处理。
3,缓冲器:用什么缓冲器,其工作特性如何。
4,结果:执行后所产生的结果。
5,子程序调用:在本段程序中,所需调用的子程序名。
6,重要声明:如寄存器是否被破坏,或其它注意的事项。
如:
【功能】:读键盘缓冲区输入码,依性质返回ASCII+扫
瞄码或中文内码
【参数】: AH = 00H
【返回】: 11AL< 80H,AH = 扫瞄码,AL = ASCII
12AL≧80H,AL = 四字符中文内码之一
【破坏暂存器】:AX
【备注】:以本功能取中文内码,须连取4次,依序得
到一中文4字符内码。
当然,如果时间充足,最好能有程序的全部说明,以及制作、修改的细部记录。
问题在于任何程序发展之初,一定乏善可陈。再加上不断的修改、增补,其间变化
复杂无比。程序员又要全神贯注,解决问题,又要考虑如何注记,一心两用,必然谈不
到效率。
那么怎样做才对呢?我建议先让程序员自由发挥,在初期有无注记无关紧要。待程
序完成了,大致上没有错误,这时,就应该停下来,从头到尾,将程序彻底整理一番。
这样不仅加注记容易,而且程序员有机会重新「欣赏」自己的心血结晶,该改的改,
该合并的合并,该删的删。最后,程序员经过反思,研究,技术将会大幅度进步,程序
更精简,注记也正确无误,工作也达到最高效率。
|