顺序结构程序
发布时间:2014/6/5 21:18:03 访问次数:671
顺序结构程序又称简单结构程序,AD604ARZ-RL是程序设计中最基本的,在整个程序设计中所占比例极大,是程序设计的基础。这里所说的简单结构程序是指一种无分支的直接程序,是按照逻辑操作顺序,从第一条指令开始逐条执行,直到最后一条指令为止。
顺序结构的程序一般用来处理比较简单的算术或逻辑问题,它的执行过程是按照程序存储器PC自动加1的顺序执行的,主要用数据传送类指令和数据运算类指令来实现。
下面来看一个例子:将内部RAM中20H单元、30H单元和40H单元的无符号数相加,存入RO(高位)和Rl(低位)中。
:起始伪指令,用于定义程序的存放起始地址
:将20H单元的数送到累加器A中
:将A中的数和30H单元的数相加
:暂存低位和于Rl寄存器
.A清零,为下一条指令做准备
:将进位(即前面加法结果的高位)加到了累加器A
:暂存高位和
:将最后一个加数送到A中
:与前面暂存的结果相加
:接要求存放低位结果
:为高位加法做准备
:与前面暂存的高位以及最近一次加法的进位累加起来
:按要求存放高位结果
:结束伪指令
分支结构程序的设计
所谓分支结构就是利用条件转移指令,使程序执行某一指令后,根据所给的条件是否满足来改变程序执行的顺序,也就是本条指令执行完后,并不是像顺序结构那样执行下一条指令,而是看本条指令所给的条件是否满足,如果满足条件就跳转到其他的指令,如果不满足就顺序执行。
这就是分支结构的程序,如果P3.5为O,就转移;反之就顺序执行。当然也可以改成P3.5=0顺序执行;而P3.5=1则转移,不过此时的程序就要用JB指令了。在51系列单片机中,可以直接用于分支程序的指令有JB (JNB)、JC (JNC)、JZ (JNZ)、CJNE、JBC等,
它们可以完成诸如正负判断、大小判断和溢出判断等。在分支结构的指令设计中,大家必须注意,执行一条判断指令只可以形成单路分支,如果要形成多路分支,就必须进行多次判断,也就是多条指令连续判断。
顺序结构程序又称简单结构程序,AD604ARZ-RL是程序设计中最基本的,在整个程序设计中所占比例极大,是程序设计的基础。这里所说的简单结构程序是指一种无分支的直接程序,是按照逻辑操作顺序,从第一条指令开始逐条执行,直到最后一条指令为止。
顺序结构的程序一般用来处理比较简单的算术或逻辑问题,它的执行过程是按照程序存储器PC自动加1的顺序执行的,主要用数据传送类指令和数据运算类指令来实现。
下面来看一个例子:将内部RAM中20H单元、30H单元和40H单元的无符号数相加,存入RO(高位)和Rl(低位)中。
:起始伪指令,用于定义程序的存放起始地址
:将20H单元的数送到累加器A中
:将A中的数和30H单元的数相加
:暂存低位和于Rl寄存器
.A清零,为下一条指令做准备
:将进位(即前面加法结果的高位)加到了累加器A
:暂存高位和
:将最后一个加数送到A中
:与前面暂存的结果相加
:接要求存放低位结果
:为高位加法做准备
:与前面暂存的高位以及最近一次加法的进位累加起来
:按要求存放高位结果
:结束伪指令
分支结构程序的设计
所谓分支结构就是利用条件转移指令,使程序执行某一指令后,根据所给的条件是否满足来改变程序执行的顺序,也就是本条指令执行完后,并不是像顺序结构那样执行下一条指令,而是看本条指令所给的条件是否满足,如果满足条件就跳转到其他的指令,如果不满足就顺序执行。
这就是分支结构的程序,如果P3.5为O,就转移;反之就顺序执行。当然也可以改成P3.5=0顺序执行;而P3.5=1则转移,不过此时的程序就要用JB指令了。在51系列单片机中,可以直接用于分支程序的指令有JB (JNB)、JC (JNC)、JZ (JNZ)、CJNE、JBC等,
它们可以完成诸如正负判断、大小判断和溢出判断等。在分支结构的指令设计中,大家必须注意,执行一条判断指令只可以形成单路分支,如果要形成多路分支,就必须进行多次判断,也就是多条指令连续判断。