5.2.3
跳跃表法
实现CASE结构时,可以使用跳跃表法,使程序能根据不同的条件转移到多个程序分支中去。
例5.8 试根据AL寄存器中哪一位为1(从低位到高位)把程序转移到8个不同的程序分支中去。
下面给出了用变址寻址方式、寄存器间接寻址方式、基址变址寻址方式实现跳跃表法的程序,其实这三种方法并无实质区别,只是其中关键的JMP指令所用的寻址方式不同而已。
以上多个例子都是既有分支结构又有循环结构,实际上,多数程序都是各种程序结构的组合。而且,循环结构可以看作分支结构的一种特例,它只是多次走一个分支,只在满足循环结束条件时,走另一个分支罢了。
|