![]() | 第11章 更高级的技术 | -321- | |||||||||||||||||||
伪指令 | 说明 | ||||||||||||||||||||
IFIDN 字符串1,字符串2 | 如果两个字符串相同,则条件成立 | ||||||||||||||||||||
IFDIF 字符串1,字符串2 | 如果两个字符串相同,则条件成立 | ||||||||||||||||||||
11.4 模块化程序设计 | |||||||||||||||||||||
早期的计算机运算速度很慢而且内存也很小,象最早的个人电脑Altair只有4KB的内存。所以早期的程序设计者所追求的目标是代码越短越好,算法越快越好。他们往往要一个字节一个字节的精心编码,而且喜爱在程序中使用很离奇的算法。这样做虽然使程序能高效运行,但是程序员的源程序恐怕只有他们自己才能读懂,经验不多的人是难于改进这些程序的。 随着电子技术的发展,计算机的速度越来越快,内存也越来越大,这使得现代的软件设计理论也就有了很大的变化。流行的观念认为好的程序首先应该是逻辑清晰,结构严谨,能够适应于不同水平的程序设计者对其加以维护,其次才考虑空间与时间问题。因此把一个软件分解成多个具有独立功能的模块分别设计,最终在组合起来的程序设计技术已经为人们所接受。 另外,编写程序是一件十分费心费力的工作,特别是汇编程序。对于一些小型的软件如果由一个人单独编写还可以接受,可如果是开发象WINDOWS这样的大型操作系统,那可就要由很多人合作才行了。 由于上述原因所以今天的软件设计主要采用"模块化"程序设计技术。所谓"模块化"指得是把一个程序分解成多个具有独立功能的部分,分给多个程序员同时编写,最后再把这些部分连接在一起形成完整的程序。 下面给出的这个程序例就是应用了模块化程序设计技术,程序本身有些老掉牙了,只不过是将键盘上输入字符的扫描码与ASCII码显示在屏幕上而已: |
|||||||||||||||||||||
TEST1.ASM EXTRN data msg data code main |
hex2asc: segment assume db db db ends segment assume proc push sub |
far PARA PUBLIC 'DATSEG' ds:data 'Module program demo 'Press any key,I will t 'the scan-code and ASCI PARA PUBLIC 'CODE' cs:code far ds ax,ax |
;告之LINK程序HEX2ASC是位于另一个 ;源程序中的过程,且为FAR属性 nstration',0dh,0ah ell you ',0dh,0ah I.',0dh,0ah,24h ;初始化堆栈 |
||||||||||||||||||
Copyright © 2004-2015 Reanimator | www.cookmoon.org |