好学IT学院:IT信息技术分享交流平台
标签:汇编  来源:互联网  作者:本站整理  发布时间:2009-05-20  ★★★加入收藏〗〖手机版
摘要:汇编语言的艺术:(组合语言的艺术)准备工作第一节 系统一、系统之选择只因真正瞭解电脑的人太少,迷信名气的结果,使得 IBM PC/AT占有了市场。为求电脑普及应用,我们唯有因陋就简,针对 IBM PC/AT及其兼容系统,作进一步的分析和说明……

第四节  统一格式

一、格式统一之优点

不论采用何种程式语言,凡是共同工作、须相互研讨,或者在同一部门中,分担成败责任者,应该有统一的程式写作方式。这样不仅便于沟通,提高程式的品质,且可避免因某一程式师之离职或出缺所造成的后遗症。

良好的程式,应如一篇美妙的文学作品,其中有技巧,有意境。其功能不仅表现在执行的效率上,也可以作为同行间学习、欣赏的媒介,这些都必须透过统一的格式达成。

尤其是把组合程式写作当作一种艺术创作,就必须经常相互观摩,如果没有共通的格式规定,则这样的程式和「天书」可以说没有多大的分别。不论注释写得再好,一般程式师自己都怕看自己的程式,更何况参阅他人的? 但若有统一的格式,养成习惯后,不仅易看易懂,而且寻找、修改方便,写作也轻松省事。

二、规格

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字元内码。

当然,如果时间充足,最好能有程式的全部说明,以及制作、修改的细部记录。

问题在于任何程式发展之初,一定乏善可陈。再加上不断的修改、增补,其间变化复杂无比。程式师又要全神贯注,解决问题,又要考虑如何注记,一心两用,必然谈不到效率。

那么怎样做才对呢?我建议先让程式师自由发挥,在初期有无注记无关紧要。待程式完成了,大致上没有错误,这时,就应该停下来,从头到尾,将程式彻底整理一番。

这样不仅加注记容易,而且程式师有机会重新「欣赏」自己的心血结晶,该改的改,该合并的合并,该删的删。最后,程式师经过反思,研究,技术将会大幅度进步,程式更精简,注记也正确无误,工作也达到最高效率。

水晶报表简介
  水晶报表(CrystalReport)是业内最专业、功能最强的报表系统,它除了强大的报表功能外,最大的优势是实现了与绝大多数流行开…
  • 好学触屏公众号虎力全开、杨帆起航!
  • 好学考试H5触屏版开放内测