单片机实验二-循环程序与子程序设计(1).ppt

单片机实验二-循环程序与子程序设计(1).ppt

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

微机原理与接口技术(A)

实验二循环程序与子程序设计一、实验目的:1、通过实验学会用汇编语言进行循环程序和子程序的编写,掌握算术运算、代码转化等应用程序的设计。2、学会应用keil-uvision2集成调试软件对汇编语言程序进行调试。掌握汇编语言程序的编辑、编译、运行、单步调试的过程和通过寄存器、存储器检查程序运行结果是否正确的方法。二、汇编语言程序设计1、循环程序,下面程序完成将内存20H开始的10个8位数传送到外存1000H开始的单元(先将内存20H开始的10个单元置入数据10)。 ORG0000H AJMPS2 ORG0100HS2: MOVR7,#10 MOVR0,#20H MOVA,#10L0: MOV@R0,A INCR0 DJNZR7,L0 MOVR7,#10 MOVR0,#20H MOVDPTR,#1000HL1: MOVA,@R0 MOVX@DPTR,A INCR0 INCDPTR DJNZR7,L1 SJMP$ END2、子程序设计编写程序,计算:,Ai为0-9中的任意数。设:A1,A2,A3存放在内部RAM20H开始的存储区域内,计算所得结果(设结果不超过8位)存放在R2中。要求:平方运算编写成子程序SORT,主程序通过调用SORT完成求和运算。源程序如下: ORG0000H SJMPMAIN ORG0100HMAIN:MOV20H,#4 MOV21H,#8 MOV22H,#6 ;置入数据 MOVR0,#20H ;置数据指针 MOVR7,#3 ;置计数初值 MOVR2,#0;结果单元清零 MOVSP,#30H ;设置SP指向30HLOOP:MOVA,@R0;取数,寄存器A作入口参数 ACALLSORT ;调用求平方子程序 ADDA,R2 ;累加平方和 MOVR2,A INCR0 ;修改指针 DJNZR7,LOOP;未完,继续 SJMPENSORT:MOVDPTR,#TAB;子程序查平方表 MOVCA,@A+DPTR RET ;返主程序TAB:DB0,1,4,9,16 DB25,36,49,64,81EN:SJMP$END 要求观察子程序的调用过程和堆栈与指针SP的变化。三、思考题:编写程序完成(1)用循环程序实现:(要求精确计算,时钟12MHz)1秒定时。(参考P.68例3-30)(2)教材P.74,例3-38四、实验要求:(1)实验前必须编写好程序;(2)程序必须编译通过并运行正确;(3)完成一项,请指导教师检查。(4)在每行指令的右侧填写执行此指令后,目的操作数(如A,Rn,direct等)中的数据。五、实验报告要求:(1)实验目的(2)实验内容(3)实验步骤(4)实验结果(含收获体会)

文档评论(0)

优美的文学 + 关注
实名认证
内容提供者

优美的文学优美的文学优美的文学优美的文学优美的文学

1亿VIP精品文档

相关文档