单分支结构
发布时间:2014/6/5 21:20:44 访问次数:1967
单分支结构是最简单的一种分支结构,一般只要使用条件转移指令一次即可实现。AD620ARZ即根据条件对程序的执行进行判断,满足条件则进行程序转移,否则程序顺序执行。在MCS-51指令系统中,提供可以实现单分支程序转移的指令有JZ、JNZ、CJNE和DJNZ等,还有以位状态作为条件进行程序分支的指令,包括JC、JNC、JB、JNB和JBC等。使用这些指令,可以完成为O、为1、为正、为负以及相等、不相等等各种条件判断。
单分支结构的程序实例。假设有两个数在内部RAM单元的40H和41H中,现在要求找出其中较大的一个数,并将较大的数存入40H中,而将较小的一个数存入41H中。
将40H单元的数送到A
CY清零,为下一条指令做准备
求差来比较大小
如果CY-O,表示没有借位,40H单元的数大,则不需交换内容
将40H单元的数送到A
交换40H单元和A中的数,大数存放于40H单元中
将较小数存于41H中
停机
多分支结构
多分支程序转移,是对于不同的判断条件,有不同的程序转移情况。如果将分支程序按序号进行排列,最大值为n,则多分支转移结构如图4-5所示。
单分支结构是最简单的一种分支结构,一般只要使用条件转移指令一次即可实现。AD620ARZ即根据条件对程序的执行进行判断,满足条件则进行程序转移,否则程序顺序执行。在MCS-51指令系统中,提供可以实现单分支程序转移的指令有JZ、JNZ、CJNE和DJNZ等,还有以位状态作为条件进行程序分支的指令,包括JC、JNC、JB、JNB和JBC等。使用这些指令,可以完成为O、为1、为正、为负以及相等、不相等等各种条件判断。
单分支结构的程序实例。假设有两个数在内部RAM单元的40H和41H中,现在要求找出其中较大的一个数,并将较大的数存入40H中,而将较小的一个数存入41H中。
将40H单元的数送到A
CY清零,为下一条指令做准备
求差来比较大小
如果CY-O,表示没有借位,40H单元的数大,则不需交换内容
将40H单元的数送到A
交换40H单元和A中的数,大数存放于40H单元中
将较小数存于41H中
停机
多分支结构
多分支程序转移,是对于不同的判断条件,有不同的程序转移情况。如果将分支程序按序号进行排列,最大值为n,则多分支转移结构如图4-5所示。