四、桥式法:
桥式法是利用读写记忆体的特性,将程式中若干指令直接填入,作为临时便桥,以改变此段程式的功能。
例如在显示时,希望能提供多种变化,而又不愿减低速度及增加太多的程式。最好的方法,便是利用桥式法,在同一位址,填入需要的指令。
桥式法用得好而又灵活时,对程式的效率极有助益。但是应该注意一点,就是只能用在可读可写的记忆区中,如若要制成「韧体」,即置入仅读记忆体(ROM) 中的程式,绝不可使用此法。
下面的实例,即为萤幕显示的桥式应用。首先,把架桥的「材料」设置在缓冲器中,如:
CDSPMOD DB 88H ;8805 = MOV [DI],AL
DB 30H ;3005 = XOR [DI],AL
DB 08H ;0805 = OR [DI],AL
DB 20H ;2005 = AND [DI],AL
CDSPMOD 即为缓冲器,其中有四个数据,分别为机器码的相异部份,如分号后所注。因为四组机器码皆有 05 ,不必再填。=右边部份,即为该机器语言相对应的指令。
程式部份先设妥功能定义,利用一、所说的变数应用法,依序由0至3先载入暂存器BX中。根据 BX 值,将所需机器码载入程式中。
10:CLOD:
11: MOV AL,CDSPMOD[BX] ;用BX取预存码
12: MOV CS:CDSP2,AL ;载入CDSP2+1
13:CDSP:
14: SUB SI,SI ;资料由0起
15:CDSP1:
16: LODSB ;取资料
17:CDSP2 LABEL BYTE ;载入的位置
18: XOR ES:[DI],AL ;原码26 30 05
19: INC DI ;须改 30 部份
20: LOOP CDSP1
21: RET
五、流水线法:
工业上的流水线生产作业,需要极为严格的规格限制,原器件分别研制完毕后,统一送到生产线上组装。
程式亦可采用同样的方法,只可惜一时手头上找不到现成的、适用的例子,只得将方法概述如下:
先设定处理流程,凡是能用这种生产流程者,皆适用。
再设定处理流程中所采用的「生产线」,也就是缓冲器。因为流水线上所用的资料都需要由缓冲器提供。
此缓冲器的长度由流程决定,缓冲器中的资料则由各调用本流程的原程式载入。
&n