历史上的今天
返回首页

历史上的今天

今天是:2025年03月10日(星期一)

正在发生

2018年03月10日 | 分支转移程序设计

2018-03-10 来源:eefocus

  分支转移程序的特点是程序中含有转移指令,转移指令又分为无条件转移和有条件转移,因此分支程序也可分为无条件分支转移程序和有条件分支转移程序。无条件分支转移程序很简单,这里不再讨论。有条件分支转移程序按结构类型来分,又分为单分支选择结构和多分支选择结构。
  
  1.单分支选择结构
  
  程序的判别仅有两个出口,两者选一,称为单分支选择结构,它在程序设计中的应用极为普遍。单分支转移程序设计一般根据运算结果的状态标志,用条件判跳指令来选择并转移。
  
  求单字节有符号数的二进制补码。
  
  正数补码是其本身,负数补码是其反码加1。因此,程序应首先判断被转换数的符号,负数进行转换,正数本身即为补码。
  
  设二进制数放在累加器A中,其补码放回到A中,程序框图如图4-3所示。781参考程序如下:
  780
  此外,单分支选择结构还有如图4-4782、图4-5783等所示的几种形式。
  
  2.多分支选择结构
  
  当程序的判别部分有两个以上的出口流向时,为多分支选择结构。它常有两种形式,如图4-6和图4-7所示。
  
  指令系统提供了非常有用的两种多分支选择指令:
  784

        790
  它们为分支转移结构程序的编写提供了方便。
  
  间接转移指令“JMP @A+DPTR”由数据指针DPTR决定多分支转移程序的首地址,由累加器A的内容动态地选择对应的分支程序。
  
  4条比较转移指令CJNE能对两个欲比较的单元内容进行比较。当不相等时,程序实现相对转移,并能指出其大小,以备进行第二次判断;若两者相等,则程序按顺序往下执行。
  
  最简单的分支转移程序的设计一般常采用逐次比较法,就是把所有不同的情况一个一个地进行比较,发现符合就转向对应的处理程序。这种方法的缺点是程序太长,有n种可能的情况,就需有n个判断和转移。
  791792
  求符号函数的值。符号函数定义如下:
  793
  X存放在40H单元,y存放在41H单元,程序框图如图4-6所示。
  
  程序如下:
  794
  在实际应用中,经常遇到图4-7所示结构形式的分支转移程序设计,即在不少应用场合,需根据某一单元的内容是0,1,…,n分别转向处理程序0,处理程序1,…,处理程序n。一个典型的例子就是当单片机系统中的键盘按下时,会得到一个键值,根据不同的键值,跳向不同的键处理程序入口。此时,可用直接转移指令(LJMP或AJMP指令)组成一个转移表,然后把该单元的内容读入累加器A,转移表首地址放人DPTR中,再利用间接转移指令实现分支转移。
  
   根据寄存器R2的内容,转向各个处理程序PRGX(X=O~72)。
  800
  程序如下:
  801
  R2中的分支转移参量乘3是由于长跳转指令LJMP要占3个单元。本例程序可位于64 KB程序存储器空间的任何区域。


推荐阅读

史海拾趣

Ferranti Electric Inc公司的发展小趣事

Ferranti Electric Inc公司的历史可追溯到1880年,由Sebastian Ziani de Ferranti(塞巴斯蒂安·齐亚尼·德·费兰蒂)在英国创立。作为发电机及壳式变压器的发明者之一,费兰蒂博士不仅拥有交流发电机、高压电缆、断路器等176项专利,而且他的创新精神也为公司的创立和发展奠定了坚实的基础。初创时期,公司就专注于电气产品的研发和生产,逐渐在电气行业崭露头角。

Catalyst / ON Semiconductor公司的发展小趣事

随着电子行业的快速发展和市场竞争的加剧,Catalyst / ON Semiconductor公司面临着前所未有的挑战。为了应对这些变革,公司进行了一系列的转型和调整。公司优化了组织架构和管理流程,提高了运营效率;同时,公司还加大了对新兴技术的投入和研发力度,以适应市场的不断变化。

DURAKOOL公司的发展小趣事

在1935年,DURAKOOL公司在Durakool成立,由几位电子工程师和发明家共同创立。他们的初衷是为电气和电子市场提供高质量的组件和系统。起初,公司面临着资金短缺和市场竞争激烈的挑战,但他们凭借对技术的热情和不懈的努力,逐渐开发出了一系列具有竞争力的产品,如Durakool水银继电器和功率继电器,赢得了客户的认可。

Fine Products Microelectronics Corp公司的发展小趣事

在1935年,DURAKOOL公司在Durakool成立,由几位电子工程师和发明家共同创立。他们的初衷是为电气和电子市场提供高质量的组件和系统。起初,公司面临着资金短缺和市场竞争激烈的挑战,但他们凭借对技术的热情和不懈的努力,逐渐开发出了一系列具有竞争力的产品,如Durakool水银继电器和功率继电器,赢得了客户的认可。

Cal-Chip Electronics公司的发展小趣事

随着公司实力的不断增强,Cal-Chip Electronics公司开始将目光投向国际市场。在XXXX年,公司成功开拓了欧洲市场,并在当地设立了分支机构。随后,公司又陆续进入北美、亚洲等多个国家和地区,实现了业务的全球化布局。在国际市场的拓展过程中,公司不仅提升了品牌知名度,也积累了丰富的国际运营经验。

Alpha Semiconductor公司的发展小趣事

Alpha Semiconductor公司于1983年创立,成立之初,公司主要从事代工服务业务。这一策略为Alpha Semiconductor在半导体行业打下了坚实的基础。通过为其他公司提供高质量的代工服务,Alpha Semiconductor逐渐积累了技术实力和行业经验,为后续的自主研发和产品创新奠定了坚实的基础。

问答坊 | AI 解惑

请问为何在b,e端并个电阻

请问为何在b,e端并个电阻…

查看全部问答>

LPC1114使用SWD调试不能通过

使用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封装库元件命名(转)

ad6.9封装库元件命名 一、多引脚集成电路芯片封装SOIC、SOP、TSOP在AD7.1元器件封装库中的命名含义。例如:SOIC库分为L、M、N三种。L、M、N --代表芯片去除引脚后的片身宽度,即芯片两相对引脚焊盘的最小宽度。其中L宽度最大,N次之,M最小。-- ...…

查看全部问答>

求助

本帖最后由 paulhyde 于 2014-9-15 09:27 编辑 …

查看全部问答>

MC145152+MC1648+MC12022

本帖最后由 paulhyde 于 2014-9-15 03:44 编辑 求这三个芯片做出来的最后是什么啊,这个怎么检查我最后是对的还是错的呢?我测MC145152的7,8脚,有一个输出方波,另一个输出的是脉冲,求具体解释呢,为什么是这样呢,是不是错误了呢?????? ...…

查看全部问答>

【设计工具】赛灵思 ISE 12设计套件创新功能图文详解

  这是亚太地区市场及应用总监张宇清赛灵思ISE12设计套件发布会上演讲PPT,张宇清详细介绍了ISE12的最新功能,并辅以图片演示介绍了ISE12如何加速FPGA开发。   …

查看全部问答>

STM32单片机的架构

今天,我们来认识一下STM32单片机的内部架构。内部架构也就是这个单片机有哪些东西组成。 众所周知,单片机是由PC机发展而来的。它是把我们PC机所拥有的CPU、RAM、ROM、I/O系统、定时器、串口等功能集成到一个硅片上而构成的一个小而完善的微型计 ...…

查看全部问答>