- 17
- 0
- 约2.25万字
- 约 28页
- 2016-10-17 发布于浙江
- 举报
单元4 汇编语程序设计
单元四? 汇编语言程序设计
4.1?单片机计数 1
4.2? LED显示电路 5
4.1?单片机计数
4.2? LED显示电路
图4.3 单分支结构
单分支结构程序的选择条件一般由运算或检测的状态标志提供,选用对应的条件判跳指令来实现。
② 多分支结构程序
在实际应用中,常常需要从两个以上的流向(出口)中选一。例如,两个数相比较,必然存在大于、等于、小于三种情况,这时就需从三个分支中选一。再如多分支跳转(又称散转)将根据运算结果值在多分支中选一。这就形成了多分支结构。其流程图形如图4.4 所示。
MCS-51单片机指令集设有散转指令:
JMP? @A+DPTR
其中数据指针DPTR为存放转移指令串(S0~Sn)的首地址,由累加器A的内
容动态选择对应的转? 指令。因此,可多达256(n=1~256)个分支程序中选一。
③ 分支结构程序的形式
单分支选择结构程序有以下三种典型形式:
图4.3:条件成立则执行分支程序(1),否则执行分支程序(2),两者选一。图4.5a:条件成立则跳过程序段(2),执行程序段(3),否则顺序执行。图4.5b:条件成立则顺序往下执行,否则重复执行程序段(1),直至条件成立,程序顺序往下执行。
?
?
?
?
?
?
?
?
?
?
?? (a) ??? (b)
图4.5单分支结构程序的典型形式
对于第三种形式,可以程序段(1)重复执行次数作为判别条件,当重复次数达到条件满足时停止重复,程序顺序往下执行,这是分支程序结构的一种特殊形式。其中判别条件也可能是一个定量或状态标志,而重复次数是不定的,只要条件一满足,立即停止重复。也可能条件不满足时直接转向判跳指令本身,一旦条件成立,立即结束。这种方式常用于状态检测。例如:??? LOOP:JB P1.X,LOOP;
本例是等待P1.X引脚上的电平出现“1”→“0”的急跳变而结束循环等待,程序顺序往下执行。
分支结构程序允许嵌套,即一个分支接着一个分支,形成树根式多级分支程序结构。汇编语言程序本身并不限止这种嵌套层次数,但过多的嵌套层次将使程序结构变得十分复杂和雍肿,以致造成逻辑上的混乱和错误,因而应尽力避免。
图4.6循环程序的典型形式
一个较复杂的程序,总是包含多个分支程序段,为防止分支流向的混乱,应采用程序流程图具体标明每个分支的确切条件和走向。
(3)循环结构程序
循环结构程序是控制主机多次、重复执行同一个程序段的一种基本程序结构。从本质上讲,它是分支结构程序中的一个特殊形式。由于它在程序设计中的重要性,故而配以专用指令,单独作为一种程序结构的形式进行设计。
在某些情况下采用循环程序结构,可使原程序大大缩短和简化。例如,利用软件延时lms,若采用NOP指令来实现,当fosc=12MHz时,需近1000条NOP指令组成。如果采用循环结构程序,只需少数几条指令即可完成。可见其程序的简化效率。
① 循环结构程序的组成
循环结构程序如图4.6所示,它由下述4个主要部分组成。
A、初始化部分
程序在进入循环处理程序段部分之前需设备初值,如循环次数、有关单元清0、变量设置、地址指针等。
B、循环处理部分
循环处理部分又称循环程序主体。是循环结构程序的核心,是循环执行需完成某种功能的主体。
C、循环控制部分
在重复执行循环体的过程中,不断修改和判断循环控制变量,直到符合结束循环条件。循环控制变量可以是循环递减计数或条件控制。前者是每循环执行一次,控制变量减1,并判是否减为0,若不为0,继续执行循环体程序;若控制变量减1后结果值为0,则结束循环程序的执行,进入结束处理。这些工作均由循环指令自动完成。后者判别结束条件上是否成立,例如计算结果达到给定精度要求或达到某一给定条件时就结束循环,这时的循环次数是不固定的。常用条件判跳指令来完成。
D、结束处理部分
这是对循环程序全部执行结束后的结果进行处理和存储。
② 循环结构程序举例
有两条功能极强的循环转移指令:
DJNZ ??Rn,rel????????????? ;以工作寄存器Rn为控制寄存器
DJNZ?? direct,rel ???? ????;以直接寻址单元作控制寄存器
这两条基本指令可派生出很多条不同控制计数器的循环转移指令,大大扩展了应用范围和多重循环的层次。
控制计数器的计数方式一般均为不断减1计数(递减方式),即每循环一次,计数器自动减1计数,并判控制计数器是否为0,若不为0,继续执行循环;若为0,则结束循环程序的执行,脱离循环程序顺序往下执行。循环次数在初始化时预置,循环次数范围1-255,如超过此范围,则要采用多重循环方式。多重层次原则上不受限。
③ 多重循环结构程序
某些复杂问题或者循环数超过256,则需采
您可能关注的文档
- 北湖地区城市设设计说明.doc
- 北航-系统可靠设计分析_赵廷弟_综合测试题1.doc
- 北语网院15秋数据库系统与应用》作业3.doc
- 北语翻硕——216年北京语言大学翻译硕士MTI考研考点整理.doc
- 北邮人力资源管作业1.doc
- 区位因素分析专训练(有答案).doc
- 区域分析与规划研笔记.doc
- 区域分析与规划习指导书(3个实验).doc
- 医学基础知识之科总结.doc
- 医学考研心血管科复习讲义.doc
- 2026及未来5年真空设备配件项目投资价值分析报告.docx
- 2026及未来5年双金属手用钢锯条项目投资价值分析报告.docx
- 2026及未来5年消毒袋项目投资价值分析报告.docx
- 2026及未来5年硅橡胶导热绝缘帽套项目投资价值分析报告.docx
- 2026及未来5年高光正喷相纸项目投资价值分析报告.docx
- 2026及未来5年定量检测系统项目投资价值分析报告.docx
- 2026及未来5年油墨助剂项目投资价值分析报告.docx
- 2026及未来5年榨汁搅拌机项目投资价值分析报告.docx
- 2026及未来5年钐铕氧化物富集物项目投资价值分析报告.docx
- 2026及未来5年中国铬矿石行业市场发展监测及投资战略咨询报告.docx
原创力文档

文档评论(0)