;相加分支 ;相减分支 ;乘法分支
MEMSP3:MOV A,R0
;除法分支
MOV B,R1
CLR C
DIV AB
MOV RESULT,A
MOV RESULT+1,B
LJMP END1
MEMSP4:MOV A,R0
;逻辑与分支
ANL A,R1
MOV RESULT,A
LJMP END1
MEMSP5:MOV A,R0
图3-3 单分支选择结构
(a)当条件满足时执行分支程序1,否则执行分支程序2。 (b)当条件满足时跳过程序段1,从程序段2顺序执行;否则,顺序
执行程序段1与程序段2。 (c)当条件满足时程序顺序执行程序段2;否则,重复执行程序段
1,直到条件满足为止。 由于条件转移指令均属相对寻址方式,其相对偏移量rel就是个 带符号得8位二进制数,可正可负。因此,它可向高地址方向 转移,也可向低地址方向转移。 对于第三种形式,可用程序段1重复执行得次数作为判断条 件,当重复次数达到某一数值时,停止重复,程序顺序往下 执行。这就是分支结构得一种特殊情况,这实际就是循环结构
开始 设置地址指针R1、计数器R0初值
取数,A←((R1))
Y A←64H
A为负数?
N A=0?
N A←X+2
Y A←∣X∣
存数,((R1))←A(30H)
R1←R1+1;R0←R0-1
N R0=0? Y 结束
图4-8 例4、5得程序流程图
返回本节
参考源程序如下:
ORG 2000H
MOV R0,#10
MOV R1,#30H
START: MOV A,R1 ;取数
JB ACC、7,NEG ;若为负数,转NEG