若要把条件分枝外的操作移入条件分枝,必须保证该操作在条件分枝取任何值的情况下都得到执行。因此,必须对该操作加以复制,分别移入每一个条件分枝。移入的操作在自己所在的条件分枝中可以与其他操作进行互斥操作的资源共享,设法在不增加硬件资源的条件下达到减少控制步数的目的。 我们对图5.34(b)进行移入条件分枝的转换:首先对操作9进行复制,得到与操作9性质完全相同的操作10,然后将操作9和操作10分别移入对应的两个条件分枝中,转换后的结果示于图5.35。从图5.35看出,操作10与与操作4分别处于互斥的条件分枝中,可以合并成操作{4,10},以便共享{-,<}功能单元。同样的道理,操作9与操作7互斥,可以合并成操作{7,9},共享{-,<}功能单元。转换后的控制数据流图所需控制步数目为4。
操作若被移入条件分枝,该操作的的条件向量相应于这个分枝条件的元素取值由X变为1或0。
|