注意区分条件转移和无条件转移指令
此处机器级代码是先判断了a>17和a<10时的default情况,然后10到17引用了跳转表,跳转表在目标文件的只读节中,按4字节边界对齐
但对于范围较大的swith-case语句不适用
过程体中没用到被调用过程保存寄存器。因而,该过程栈帧中仅需保留EBP,
即其栈帧仅占用4字节空间,若考虑栈帧按16B对齐,也仅用16字节,而递归
方式则用了16n字节,是n倍关系!每次递归调用都要执行16条指令,一共多
了n次过程调用,因而,递归方式比循环方式至少多执行16n条指令。
由此看出,为提高程序性能,能用非递归方式执行则最好用非递归方式。
参考:南大计算机系统基础(一)