历史上的今天
今天是:2025年03月10日(星期一)
2018年03月10日 | 分支转移程序设计
2018-03-10 来源:eefocus
分支转移程序的特点是程序中含有转移指令,转移指令又分为无条件转移和有条件转移,因此分支程序也可分为无条件分支转移程序和有条件分支转移程序。无条件分支转移程序很简单,这里不再讨论。有条件分支转移程序按结构类型来分,又分为单分支选择结构和多分支选择结构。
1.单分支选择结构
程序的判别仅有两个出口,两者选一,称为单分支选择结构,它在程序设计中的应用极为普遍。单分支转移程序设计一般根据运算结果的状态标志,用条件判跳指令来选择并转移。
求单字节有符号数的二进制补码。
正数补码是其本身,负数补码是其反码加1。因此,程序应首先判断被转换数的符号,负数进行转换,正数本身即为补码。
设二进制数放在累加器A中,其补码放回到A中,程序框图如图4-3所示。
参考程序如下:

此外,单分支选择结构还有如图4-4
、图4-5
等所示的几种形式。
2.多分支选择结构
当程序的判别部分有两个以上的出口流向时,为多分支选择结构。它常有两种形式,如图4-6和图4-7所示。
指令系统提供了非常有用的两种多分支选择指令:
![]()

它们为分支转移结构程序的编写提供了方便。
间接转移指令“JMP @A+DPTR”由数据指针DPTR决定多分支转移程序的首地址,由累加器A的内容动态地选择对应的分支程序。
4条比较转移指令CJNE能对两个欲比较的单元内容进行比较。当不相等时,程序实现相对转移,并能指出其大小,以备进行第二次判断;若两者相等,则程序按顺序往下执行。
最简单的分支转移程序的设计一般常采用逐次比较法,就是把所有不同的情况一个一个地进行比较,发现符合就转向对应的处理程序。这种方法的缺点是程序太长,有n种可能的情况,就需有n个判断和转移。


求符号函数的值。符号函数定义如下:

X存放在40H单元,y存放在41H单元,程序框图如图4-6所示。
程序如下:

在实际应用中,经常遇到图4-7所示结构形式的分支转移程序设计,即在不少应用场合,需根据某一单元的内容是0,1,…,n分别转向处理程序0,处理程序1,…,处理程序n。一个典型的例子就是当单片机系统中的键盘按下时,会得到一个键值,根据不同的键值,跳向不同的键处理程序入口。此时,可用直接转移指令(LJMP或AJMP指令)组成一个转移表,然后把该单元的内容读入累加器A,转移表首地址放人DPTR中,再利用间接转移指令实现分支转移。
根据寄存器R2的内容,转向各个处理程序PRGX(X=O~72)。

程序如下:

R2中的分支转移参量乘3是由于长跳转指令LJMP要占3个单元。本例程序可位于64 KB程序存储器空间的任何区域。
下一篇:数据排序程序设计
史海拾趣
|
使用keil+Ulink-2调试LPC1114,点了flashdownload后总是报错:target.dll has been canceled.SWD调试不是只需要从Ulink-2上引两根线到芯片的p0.10,p1.3吗?我没有用过SWD调试,使用变压器给芯片提供3.3V电压,从Ulink上引得7,9根线到芯片的SWD端口 ...… 查看全部问答> |
|
深圳科技园公司招聘WIN CE软件工程师,有能力者待遇不会低(10K-12K) 因公司发展,深圳科技园一家公司招聘WIN CE软件工程师,相关要求如下: 1、国内重点名牌大学计算机专业本科或以上学历,两年以上Windows程序开发经验工作经验。 2、精通C/C++ C++/MFC/Win32 SDK 。 3、有网络通讯开发经验、有Windows CE应用程序 ...… 查看全部问答> |
|
印制电路板的可测试性设计原则1、由板子的具体电路和功能,可以选择板上的各个部分电路是否需要采用相应的测试点。 印制电路板的可测试性设计原则 1、由板子的具体电路和功能,可以选择板上的各个部分电路是否需要采用相应的测试点。 2、应该 ...… 查看全部问答> |
|
ad6.9封装库元件命名 一、多引脚集成电路芯片封装SOIC、SOP、TSOP在AD7.1元器件封装库中的命名含义。例如:SOIC库分为L、M、N三种。L、M、N --代表芯片去除引脚后的片身宽度,即芯片两相对引脚焊盘的最小宽度。其中L宽度最大,N次之,M最小。-- ...… 查看全部问答> |
|
本帖最后由 paulhyde 于 2014-9-15 03:44 编辑 求这三个芯片做出来的最后是什么啊,这个怎么检查我最后是对的还是错的呢?我测MC145152的7,8脚,有一个输出方波,另一个输出的是脉冲,求具体解释呢,为什么是这样呢,是不是错误了呢?????? ...… 查看全部问答> |
|
这是亚太地区市场及应用总监张宇清赛灵思ISE12设计套件发布会上演讲PPT,张宇清详细介绍了ISE12的最新功能,并辅以图片演示介绍了ISE12如何加速FPGA开发。 … 查看全部问答> |
|
今天,我们来认识一下STM32单片机的内部架构。内部架构也就是这个单片机有哪些东西组成。 众所周知,单片机是由PC机发展而来的。它是把我们PC机所拥有的CPU、RAM、ROM、I/O系统、定时器、串口等功能集成到一个硅片上而构成的一个小而完善的微型计 ...… 查看全部问答> |




