- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
查表程序设计
复习 一个源程序的四个要素 子程序:形式、功能、入口参数、出口参数 子程序的调用:调用过程示意图 子程序调用及返回指令的执行过程 子程序的现场保护和参数传递 查表程序 一个完整的源程序必备的四个要素: 有ORG 0000H,即源程序的机器码从ROM的0000H单元开始存放。 通常源程序的存放要跳过中断向量区。实现方法:在0000H单元存放一条转移指令,转向中断向量区后的主程序的真实的入口地址,如START、MAIN等。 有END,告知汇编程序,你的源程序结束了。 源程序的主程序框架一定是一个顺序执行的无限循环的程序,运行过程必须构成一个圈;子程序与主程序相对独立。 4.3.3 查表程序设计 指令“MOVC A,@A+DPTR”完成把A中的内容作为一个无符号数与DPTR中的内容相加,所得结果为某一程序存储单元的地址,然后把该地址单元中的内容送到累加器A中。 指令“MOVC A,@A+PC”以PC作为基址寄存器,PC的内容和A的内容作为无符号数,相加后所得的数作为某一程序存储单元的地址,然后把该地址单元中的内容送到累加器A中。 例4-5 子程序的功能为:根据累加器A中的数x(0~9之间)查x的平方表y,根据x的值查出相应的平方y。x和y均为单字节数。 地 址 子程序 Y ADD A,#01H Y+2 MOVC A,@A+PC Y+3 RET Y+4 DB 00H,01H,04H,09H,10H DB 19H,24H,31H,40H,51H 第1条指令 ADD A,#01H 的作用是加上偏移量,可以根据A的内容查出X对应的平方。 例4-6 例4-7 子程序与查表的综合举例 思考题 求 x平方,x在R0中,取值范围在5~15 4.3.7 分支转移程序设计 有条件转移指令通常可以完成单分支转移 下列两种转移指令可以完成多分支转移 间接转移指令: JMP @A+DPTR; 比较转移指令: CJNE A,direct,rel; CJNE A,#data,rel; CJNE Rn,#data,rel; CJNE @Ri,#data,rel; 例4-12 求符号函数的值。程序框图如图4-6所示。 读P89,注意其中的转移指令AJMP NEGT 多分支转移结构 4.3.8 循环程序设计 优点:(1)可大大缩短程序长度 (2)使程序所占的内存单元数量少 (3)使程序结构紧凑和可读性变好。 1.循环初始化 循环初始化程序段用于完成循环前的的准备工作。例如,循环控制计数初值的设置、地址指针的起始地址的设置、为变量预置初值等。 2.循环处理 循环程序结构的核心部分,完成实际的处理工作,是需反复循环执行的部分,故又称循环体。这部分程序的内容,取决于实际处理问题的本身 3.循环控制 在重复执行循环体的过程中,不断修改循环控制变量,直到符合结束条件,就结束循环程序的执行。循环结束控制方法分为循环计数控制法和条件控制法 4.循环结束 这部分是对循环程序执行的结果进行分析、处理和存放。 二、循环结构的控制 图4-8是计数循环控制结构,图4-9是条件控制结构。 1.计数循环结构 例5 :求50H单元后30个数的累加和,放入B 2.条件控制结构 3.多重循环 练习: 写一个延时10ms的子程序。(近似值,钟频12MHz ) 写一个延时1s的子程序。 4.3 汇编语言实用程序设计-循环程序设计 休让够狙敏蛛映胀抡沛椒类檬风合双赋囊伶判辽敬辟笔腋老尖抛郭与弛湖查表程序设计查表程序设计 直到型 当性 4.3 汇编语言实用程序设计-循环程序设计 格轻似辨挨货页弱犁印巢醒束幌溢李赌撞奥瓮膏煤儡踏箭苛谈寓抱拌吃腋查表程序设计查表程序设计 计数循环控制结构是依据计数器的值来决定循环次数,一般为减“1” 计数器,计数器减到“0”时,结束循环。计数器的初值是在初始化时设定。 MCS-51的指令系统提供了功能极强的循环控制指令: DJNZ Rn, rel;工作寄存器作控制计数器 DJNZ direct,rel;以直接寻址单元作控制计数器 例如,计算n个数据的和。 程序框图见图4-10 。P92 计数控制方法只有在循环次数已知的情况下才适用。 4.3 汇编语言实用程序设计-循环程序设计 韧涛干谣灼衅逃搐腹遏睛戴曼蝶烬具卸束远阳蠢窘烈佳铸棚君诱眷岸祸挞查表程序设计查表程序设计 ABC: MOV R7,#30 MOV
您可能关注的文档
最近下载
- “产业襄阳”发展战略规划.doc VIP
- 2013款东风雪铁龙C5_汽车使用手册用户操作图解驾驶指南车主车辆说明书电子版.pdf
- 运动营养学(第三版)课件全套 第1--10章 运动营养学基础、 健身运动的合理膳食营养---运动.pptx
- 《门诊院感》课件.pptx VIP
- 2024-2025学年上海市奉贤区高三上学期高考一模物理试卷含详解.docx
- DB45_T618-2009:建筑施工模板及作业平台钢管支架构造安全技术规范.pdf VIP
- 2023年河北省衡水中学自主招生数学模拟试卷及答案解析.pdf
- 2024驾校学员管理制度 .pdf VIP
- 2024年四川省中考语文试卷十六套合卷含答案.pptx VIP
- 程家惠《洋话汉音》(升级版).doc
文档评论(0)