- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
51单片机汇编语言程序设计[精品]
* * 在上例程序中采用了多重循环程序,即在一个循环体中又包含了其他的循环程序,这种方法是实现延时程序的常用方法。使用多重循环时,必须注意以下几点。 (1) 循环嵌套,必须层次分明,不允许产生内外层循环交叉; (2) 外循环可以一层层向内循环进入,结束时由里往外一层层退出; (3) 内循环可以直接转入外循环,实现一个循环由多个条件控制的循环结构方式。 4.2.3 循环程序 * * 4.2.4 子程序 同一个程序中,往往有许多地方都需要执行同一任务,这时可对这项任务独立编写,形成一个子程序。在原来的主程序中需要执行该任务时,调用该子程序,执行完后又返回主程序,这就是子程序结构。在程序设计过程中,适当地使用子程序具有以下优点: 1) 不必重复编写同样的程序,提高了编码的效率。 2) 缩短了源程序和目标程序的长度,节省了程序存储器的空间。 3) 使程序模块化、通用化,便于阅读、交流和共享。 4) 便于分块调试。 ----子程序 * * 在子程序调用过程中须解决以下两个方面的问题: 1) 保护现场和恢复现场。 2) 调用程序与被调用程序之间的参数传递。 保护现场和恢复现场 在进入子程序时,将需要保护的数据推入堆栈,子程序中要使用到的寄存器。在返回主程序之前,再将推入堆栈的数据弹出到原有的工作单元,恢复其原来的状态,使调用程序可以继续往下执行。 4.2.5 子程序 ----子程序 * * 参数传递 子程序调用时,要特别注意主程序与子程序之间的信息传递问题。在调用一个子程序时,主程序应先把有关参数(子程序入口条件)放到某些约定的位置,子程序在运行时,可以从约定的位置得到有关参数。同样子程序结束前,也应把处理结果(出口条件)送到约定位置。返回后,主程序便可从这些位置得到需要的结果,这就是参数传递。 4.2.5 子程序 ----参数传递 * * 参数传递大致可分为以下几种方法: 1) 传递数据 将数据通过工作寄存器R0~R7和累加器来传送。即主程序和子程序在交接处,通过工作寄存器或累加器存储要传递的参数。 2) 传送地址 数据存放在数据存储器中,参数传递时只通过R0、R1或DPTR传递数据所存放的地址。 3) 通过堆栈传递参数 在调用之前,先把要传送的参数压入堆栈,进入子程序之后,再将压入堆栈的参数弹出到工作寄存器或者其他内存单元。 4.2.5 子程序 ----参数传递 * * 例4-10 试编写程序,计算 分析:0、1、...、9存放在内部RAM的20H开始的存储区域内,计算所得结果存放在R3、R2中。要求:平方运算编写成子程序SORT,主程序通过调用SORT并求和完成运算。参数的传递用累加器。 4.2.5 子程序 ----子程序应用 * * ORG 8000H MAIN: MOV R0, #20H ;置数据指针 MOV R7, #10 ;置计数初值 MOV R3, #0 ;结果单元清零 MOV R2, #0 LOOP: MOV A, @R0 ;取数 ACALL SORT ;调用求平方子程序 ADD A, R2 ;累加平方和 MOV R2, A MOV A,R3 ADDC A, #0 ;加进位Cy MOV R3, A INC R0 ;修改指针 DJNZ R7, LOOP ;未完,继续 4.2.5 子程序 ----子程序应用 * * SJMP EN SORT: MOV DPTR, #TAB ;进入子程序查平方表 MOVC A, @A+DPTR RET ;返主程序 TAB: DB 0, 1, 4, 9, 16 DB 25, 36, 49, 64, 81 EN: NOP END 4.2.5 子程序 ----子程序应用 * * 习题与思考题 4-1 常用的程序结构有哪几种?特点如何? 4-2 子程序调用时,参数的传递方法有哪几种? 4-3 编写程序,将片内30H~39H单元中的内容送到以2000H为首的外部存储器。 4-4 MCS-51系列单片机汇编语言进行程序设计的步骤如何? 4-5 编写程序,采用算术平均值滤波法求采样平均值,设8次采样值依次放在20H~27H的连续单元中,结果保留在A中。 * * 4-6 编写程序,将存放在内部RAM起始地址为20H和30H的两个3字节无符号相
您可能关注的文档
- 2Cr13活塞杆的热处理工艺设计课程设计论文[精品].doc
- 2×12MW背压式热电联产机组新建工程项目投资立项可研报告[精品].doc
- 2×135MW机组烟气脱硫改造工程“二炉一塔”及“一炉一塔”方案研究分析报告[精品].doc
- 2×660MW超超临界燃煤空冷机组新建工程凝结水精处理系统技术协议[精品].doc
- 2×660MW超超临界燃煤空冷机组新建工程升压站计算机监控系统(NCS)技术协议[精品].doc
- 2×660MW超超临界燃煤空冷机组新建工程工业废水集中处理系统技术协议[精品].doc
- 2×660MW超超临界燃煤空冷机组新建工程水库水净化站原水处理系统技术协议[精品].doc
- 2、“学思践悟”专栏系列文章汇编[精品].doc
- 2、水利工程施工质量检验评定与验收[精品].doc
- 2o15年电大本科土木工程力学期末考试复习题[精品].doc
- 2024年江西省高考政治试卷真题(含答案逐题解析).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)物理试卷(含答案详解).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解).pdf
- 2024年内蒙通辽市中考化学试卷(含答案逐题解析).docx
- 2024年四川省攀枝花市中考化学试卷真题(含答案详解).docx
- (一模)长春市2025届高三质量监测(一)化学试卷(含答案).pdf
- 2024年安徽省高考政治试卷(含答案逐题解析).pdf
- (一模)长春市2025届高三质量监测(一)生物试卷(含答案).pdf
- 2024年湖南省高考政治试卷真题(含答案逐题解析).docx
- 2024年安徽省高考政治试卷(含答案逐题解析).docx
最近下载
- 2024年河北省高考英语试卷(含答案解析).docx
- 特色办学建设规划及实施方案.doc VIP
- 惠州市2024届高三第三次调研考试(三调)语文试卷(含答案).pdf
- 2021年农产品商贸流通专业群人才培养方案(高职).pdf
- 热血三国秒墙计算器.pdf VIP
- 教育调查与研究报告大学.docx VIP
- 《急诊与灾难医学》第十章 急性中毒.pptx
- 2024年高考真题和模拟题英语分类汇编:专题10 完形埴空(新高考15空) (原卷版) (全国通用).docx VIP
- 大唐国际胜利东二号露天煤矿采场边坡稳定性分析-采矿工程专业论文.docx
- 2024年新入职护士培训考试题库资料800题(含答案).pdf
文档评论(0)