组 合 语 言 之 艺 术(一)(1) //这是一篇90年的文章,从汇编语言角度讲软件开发,内容稍嫌陈旧,//不过文章很多观点,我甚赞同//朱先生是软件界大前辈,仓颉码发明人,現任香港文化傳信集團副主席//發表「漢字基因工程」序 本书专供已具备写作组合程式语言( Assembly Language)能力及经验,且有志将组合语言视为常用工具之程式师,做进一步观念、技术上研讨用。 微电脑由诞生迄今,不过短短廿载,一切观念及技术,尚处於开发阶段。可是利用一种不变的硬体机构,再加上可随实际需要而任意设计的程式,在相互配合下,完成某些指定的工作,却是最具效率的方法。 且不论电脑硬体未来的发展如何,程式这种可塑性极高的软体,必然会成为人类文明的重要一页。甚至於随着时代的需要,大量人力、心智的投入,它又何尝不可能成为一种艺术?一种代表着人类智慧、涉及各种领域、且具备商业价值的综合性艺术? 艺术具有开放性、观摩性、完美性的特徵,它可以充实人生、升华人性、活化心灵,是人类特具的一种创造行为。在每一个时代,随着环境及事物的变迁,都会有不同形式的艺术出现。人们运用心灵可以触及的各种素材,发挥到意识所及的最高境界,这就是艺术。 我认为在这个资讯时代,电脑程式的设计及应用,正是一种划时代的艺术。目前还只是电脑艺术的拓荒期,由无到有,再由简而繁,以臻於至善,在这过程中,尚有待我们投入大量的劳力、心血以及无上的智慧。 本书对初学程式语言者并无助益,读者起码应具备对电脑软硬体的认识,并略通组合语言的指令。更理想的是已经有一些应用上的经验,才能领会其中道理。 组合语言系供机器控制用,因中央处理器(Centrol Proc-essing Unit,CPU) 或微处理器(Micro Processor)之不同而有所不同。本书仅针对8088 CPU指令,作技术性探讨。 本书原系本人在两仪文化科技公司教学之讲义,後因各界需要,特加以整理发行。但因工作繁重,兼以视茫发苍,对有关细节,常有力不从心之叹。书中谬误之处甚多,尚请方家不吝指正是幸。 正当本书要出版之际,我发现市面上有本“ZEN of Assembly Language” (Michael Abrash, Scott, Foresman and Company)的好书,这本书中的观念和我极为接近,只是在技术上更进一层,分析得非常透彻,值得向大家推荐。 巧的是,在该书中也举了点阵放大的例子,且方法与我们用的很类似。读者有兴趣,正好详细比较一下,他山之石,可以攻错,能见到这样的好书,证明吾道不孤,颇令人安慰。 我坚信当电脑成熟时,软体的制作将全靠模组,而模组必须建立在组合语言上。因此,到了最後,只需要少数人制作专用模组,并公开销售。至於应用软体,将会简单到人人都能设计,所以有志从事电脑工作者,应该由组合语言着手。 本书由沈红莲小姐修辞、校正,刘莉小姐利用“聚珍整合系统”,以600 点雷射印表机制版,特此致谢。 朱邦复 1990年7月 第一章 观念正误 第一节 电脑一、前言 电脑的到来,被喻为人类文化的第三波革命,由於它具有强大的资讯机能和弹性,正好弭补了人类记忆不足、反应迟钝、厌於重覆和受限於时空的缺点。遂在当今世事繁杂、变化多端的动态社会中,成为人类日常工作中有力的帮手。 它之不同於人类其他的发明,是以机件的「硬体」结构,去执行可以随设计理念而改变的「软体」。这一来,机器便具有了灵活应用的弹性,只要有适合的软体,它就会忠实不渝地去处理各种繁琐的任务。 在初,它的速度及容量很低,但已有足够的魅力,吸引了无数狂热的有心人士,为它尽智竭力,不断地改良更新。仅仅不过十馀年,它已脱胎换骨,蔚为龙象。