好学IT学院:IT信息技术分享交流平台
标签:汇编  来源:互联网  作者:本站整理  发布时间:2009-05-19  ★★★加入收藏〗〖手机版
摘要:汇编语言的艺术之一:(组合语言的艺术)观念正误第一节 电脑一、前言电脑的到来,被喻为人类文化的第三波革命,由于它具有强大的资讯机能和弹性,正好弥补了人类记忆不足、反应迟钝、厌于重覆和受限于时空的缺点。遂在当今世事繁杂、变化多端的动态社会中,……

  第三节  效率定律

一、效率的定义

在宇宙中,大至物种的演进、变化,小至个人的工作、运动等,都严格地遵守效率法则。

效率的定义是:

┌─────────────────────────┐
  │F=E/t,即特定的能量在特定的时、空中所作的「功」。│
  └─────────────────────────┘

由上式 F = E/t 可知,特定的「能量」在特定的「时空」中所作的「功」,是一恒定值,既为恒定值,表示不可能有任何浪费。当能量不变时,时、空的延长往往会导致「功率」的不足,从另一个角度看,可以说是能量不够,效率低。

对电脑而言,如果写作程式的「功率」能接近此一「恒定值」,而又具有长远的使用价值,则我们可以假定,这种程式的效率最高。

由人类文明的演进,可以看出,因为技术日渐专业化,工作的难度不仅没有减低,反而更加复杂。这种藉着职业专家的投入,以节省一般应用者宝贵时间的方法,事实上可以说就是效率的追求。

因为人的生命仅存在于有限的时间,所以其价值极高。每一个电脑程式,其最终目的都是为了服务大多数的使用者,制作程式者仅仅是少数人,其制作时间的长短,永远无法与大多数的使用者,在操作中所耗费的时间相提并论。

此外,以写作程式为职业的人,一生中所需写作的程式,也一定有相当的数量。如果能重复应用写过的程式,将更缩短其写作时间。无论从哪一个角度,若要追求效率,组合语言应是唯一的选择。

作为电脑的从业者,在职业良知上,理应禀着服务人类、追求效率为最高准则。

二、电脑的效率性

电脑的发明,是人类追求效率最具代表性的成就。

目前电脑的机能尚局限在资料处理以及自动控制上,人们利用电脑,所期望得到的效率不外乎下述六点。

1,节省工作时间及工作成本。
  2,取代繁琐、重覆性高或具有危险性的作业。
  3,追求精密无误的资料、讯息。
  4,贮存或运算大量的数据或资料。
  5,远距离的通讯或遥控作业。
  6,自动化工业生产或一般性服务。

然而,电脑发展方兴未艾,上述数点难以表达于万一。因此,我们有必要将人类所期望的效率整理归类,以作为分析判断的依据。

三、四大效率定律

兹以人类社会中,有关作业过程、生产成本及应用价值等三方面,分别假设定律如下:

定律一:
      在作业过程上,能以最少步骤产生最大功率者,效率最高。

定律二:
      在生产成本上,时、空间及原料最节省者,其效率最高。

定律三:
      在应用价值上,功能及成果能一再累积者,其效率最高。

定律四:
      最佳的效率,是最符合实际需求的最大边际效应。

电脑的应用,纯粹是为了追求工作效率,据此,硬体、软体的设计,都应严格遵守效率定律。可是事实却不然,由于电脑发展迄今,一直是「卖方市场」,美其名为「高科技」,内行人高利、高酬,外行人则唯恐后人,亦步亦趋。

电脑界为了谋取近利,在软件设计的过程上,常采用最缺乏工作效率的高阶语言。但是由于高阶语言易于制作,生产成本低,只是苦了「无知无觉」的买者,为了追求效率往往要花费更多的代价,购买更昂贵的、更新型的硬体,以满足其效率的需要。

有人说高阶语言制作的程式还有一个组合语言无法比拟的优点,就是很容易「转移」到其他的机种上。事实上,目前微电脑市场仅存两种机型:一为IBM PC系列及其兼容机,另一为MACINTACH ,而这两者所有的软件,不论采用哪一种语言,都无法轻易地「转移」!

一般说来,任何一种新的微电脑上市,其执行速度及记忆容量每增加一倍,其价格亦成正比上升。是不是有必要非改进硬体,才能达到效率的要求呢?如果我们能澈底瞭解程式语言的特性,当会明确地认知怎样才具最大边际效益。

这也是进化的基本法则之一,当电脑技术成熟之时,真正的效率才会受到重视。同理,在电脑应用效率达到最高点时,也就是电脑技术成熟的时机。我们如果能掌握这个原则,自不难看到长远的发展趋势,洞烛机先。

四、组合语言之效率

根据定律一,组合语言之效率是不容置疑的,因为组合语言相当于电脑运行的「机器命令」,能直接产生「功率」。

生产成本有多种意义,在此我们仅讨论其中两点:一是生产过程所需的时间,一是产品的直接成本。

组合语言能以最小的空间,发挥最大的功能。显然,在等效的功能下,其成品所占空间最小,成本最低。但是对生产过程所需时间而言,组合语言就处于相当不利的地位。除非能有一种方法,可以改进组合语言制作的效率。

这正是本书的主要目的:介绍一种方法,以提高组合语言之制作效率。

我们的目标不仅在提高数倍的制作效率,并且还要证明,用一种特殊的手段,能将组合语言设计的「模组」,如同砌砖一般,建造出资讯的金字塔来。这样不仅能满足定律三,而且完全符合定律四的要求。

最重要的,是这种效率的达成,在于利用人的「智力」。我认为在宇宙进化的过程中,到目前为止,「人智」就是最高效率的结晶。任何人若要追求效率,应自己先下手,与其坐待硬体的改进,不如充实程式写作的方法及技巧,至少,这些都操纵在自己的手里。

五、模组的效率

模组并不是一个新观念,在人类文明发展史上,人一直致力于瞭解自己身处的宇宙。这种瞭解,实际上就是模组应用的观念,将宇宙大环境,分解成为人所能认知的小环境,进而将小环境再分解成为个人的经验素材。

这样一层层地分解下去,便有了「概念、知识」。换句话说,概念及知识,就是一个个代表人类对客观认知的模组。

基于模组的特性,人才能灵活地加以应用,因而产生了「人类文明」。同理,当电脑的软件,也演化为模组方式,进一步大量推广运用时,电脑文明的时代,即将到来。

模组的效率是结构性效率的最高表现,在我们处身的宇宙中,无处没有结构,无一不受到结构的支配。有关模组规划、制作和应用,将在第四章第三节、模组观念中详加讨论。

如何将汇编语言与C语言整合至DSP
  本文将讨论如何将汇编语言程序代码整合到C语言中,以最大化性能以及程序设计人员生产力,内容涵盖了编译器惯例(convention)、…
  • 好学触屏公众号虎力全开、杨帆起航!
  • 好学考试H5触屏版开放内测