




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、百度文库-让每个人平等地提升自我附录1实验报告格式要求微机实验报告实验名称分支程序设计实验专业班级一、任务要求1.设有8bits符号数X存于外部RAM单元,按以下方式计算后的结果Y也 存于外部RAM单元,请按要求编写程序。X1 当XN40Y = <X/2当 20cx<40X当X < 20.2.利用51系列单片机设计一个24小时制电子时钟,电子时钟的时、分、 秒数值分别通过PO、Pl、P2端口输出(以压缩BCD码的形式)。P3.0为低电平 时开始计时,为高电平时停止计时。二、设计思路1 .可知此实验要求根据不同的值进行不同的运算,因此需要使用分支程序。X 处于不同的范围,有不同
2、的运算,可知应该先判断其与20的大小,再判断其与 40的大小。于是需要用到CJNE指令以及JC判断C指令。并由此进行不同的 运算,即可完成程序目的。2 .制作一个1s的延时,并将其循环60次,并将其存入P0,作为秒的计时。再 来一个外层循环,将其循环60次,并存入P1,作为分计时,最后再加一个外循 环,使其循环24次,并存入P2,作为时的计时。开始计时的控制可由JB语句 来实现三、资源分配1 .将30H作为外部RAM的地址,并将A的结果存入该RAM中。2 .将R3.R4.R5.R6R7作为临时放置数据的中间量,将秒,分,时的结果存入P0, P1, P2.四、流程图程二序一10程序二五、源代码(
3、含文件头说明、资源使用说明、语句行注释)1 File name:Description:task2-l.asmX2 当XN40Y = x/2当 20Vx<40X当X W 20Date: 10/15/2011Designed by:刘珍Source used: R0.30HORG 1000HMOVR0,30HMOVXA,R0CJNEA.#2O.STEP1;X#20,转 STEP1LI:CPLA;X=20,计算/XSJMPDONESTEP1:JNCSTEP2;C=0.X>20,转 STEP2SJMPLI;C=LX<20.转 LISTEP2:CJNEA.#40,STEP3;XM0,
4、转 STEP3L2:CLRC;X=40.计算 X*XADDCA,R0SJMPDONESTEP3:JNCL2;C=0.X>40,转 L2CLRC;C=l,20<X<40,计算 X/2MOVB,#2HDIVABDONE:MOVXR0,ASJMPEND2. File name:task2-2.asmDes1:ription:计时器,通过P0/P1/P2输出,通过P3.0控制。Date: 10/15/2011Designed by:刘珍Source used: R3.R4.R5.R6.R7临时放置数据的中间量DELAY:P0.PLP2存放秒,分,时ORG 0000HMOV P0.#0
5、HMOV PL#0HMOV P2.#0HMOV R3.#60MOV R4.#60MOV R5.#24HMOV R6.#0HMOV R7.#0HCLR CMOV P3.0.CJB P3.0.DONEMOV R2.#5O;置循环次数DELAY3:DELAY2:DELAY 1:MOV R0.#20MOV RL#250NOPNOPDJNZ RLDELAY1DJNZ R0.DELAY2;构架三重循环DJNZ R2.DELAY3INCA;记录“秒”的次数AJMPBCD;转化为BCDCLRCDAAMOVP0,A;通过P0输出秒DJNZR3.DELAY;置秒循环60次MOVR3,#60;恢复秒的循环次数MOV
6、A.R7INCA;记录分的循环次数AJMPBCD;转化为BCDCLRCDAAMOVR7.A乂呆存分的循环次数MOVPL#OFFH;读数的预操作MOVPLA;输出分MOVPO.#OH;清零,保证下一轮循环CLRADJNZR4.DELAY;置分循环60次MOVR4.#60MOVR7.#0HMOVA.R6AJMPBCD;转化为BCDINCA;记录分的循环次数CLRCDAAAJMPBCD;转化为BCDMOVR6.A;保存分的循环次数MOV P2.#0FFHMOV P2.AMOV P0.#0HMOV PI.#OFFHMOV PL#OHCLR A;清零,保证下一轮循环DJNZ R5.DELAY;置时循环2
7、4次DONE: SJMP $END六、程序测试方法与结果、软件性能分析实验一:赋值1,所得到的结果日Regs0x13 I(Mlr20就(MOr4(M0r50就6(KOr70就日Sys0x13b01平网“” spjnax0070做1PC 1CO以 2cstates41secO.(mi3J9Sipsw(MlRegister Value|j 30:0582INC D?L INCMOT A; RIDPL|Ox82)J|c:0xO02A31:c>C:0xO02CE9MOVA, RI;j 32:MOTX 8DPTR,2C:0xO02DF0MOVXODPTRM33: C:0xO02E0582INC D
8、PLINCDPL|Ox82)34:C:0x0030E8HOT A, R0 MOV2, RO*,ar-iPTciLJJtest 15,asmBIN:MOV DPLZOOHMOV DP% 20HMOV A J27HMOVX 0DPTR;A实验二:RosierVdue3陶(WO:HilMBj -r2Q<flGQd56触©M3r?岫bQOD5pQ5$P maxQW胡QMK iCM-版 w279yosecQ网颇'侬啦INCINCCLRCLRBiBiXOTXOVXOVXOTvrii?ParaHdPort!-PO!t1 1 ? Bte 0呻 V 111M kkPP1MDIK: Sff
9、" pppp|7ppppimdoui:丽 rrnTEP1SKIR |S7Pin同ParalklPortZ/ J test 14,asinML1T1: KOPHOPDJBZ RlfDELATl DJBZ ROJE 血 72 DJBZ R2fDELAT3IIC A CLR C DI AW PO;ADJHZ R3fD£LAYMOV R3,伽MOV A,R7 IK A CIR C函强能秒;翻版60次 感副魄环通阳27 脍 0P2 瓯 rnftPiTKI.IDIN: oTT 印丽丽7pP2WD0UT: mF i | j j 111 pw 顾 rmrrffPf窗顾 ii nri r七、思考题1 .实现多分支结构程序的主要方法有哪些?举例说明。答:主要方法有:分支地址表如:BRATAB: DW SUBRODW SUBR1DW SUBR2转移地址表如:JMPTAB: AJMP SUBROAJMP SUBR1AJMP SUBR2地址偏移量表如:DISTAB: DBSUBRO-DISTABDB SUBR1-DISTABDB SUBR3-DISTAB2 .在编程上,十进制加1计数器与十六进制加1计数器的区别是什么?怎 样用十进制加法指令实现减1计数?答:十六进制加一直接用IC加一,十进制加一时需先判断该位上是否是9,若 是则清零。八、心得与体会这一次的编程,第一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 办公文员面试考试题及答案
- 足部疾病推拿治疗考试题及答案
- 2025年文化旅游融合发展实施方案创新报告
- 2025年工业园区污水处理站绿色建筑集成初步设计评估报告
- 2025年电商平台内容营销与种草经济内容营销团队培训与成长报告
- 有用的企业面试题库【全优】附答案详解
- 2025年度新型化学品防爆认证服务合同范本
- 2025版幼儿托管班社区共建服务合同
- 2025年度绿色能源项目可行性研究报告编制合同
- 2025年度绿色环保建筑渣土运输服务合同
- 16学时《中医药膳学》教学大纲(可编辑修改文本版)
- 崧舟细讲文本:小学语文教材文本解读与教学设计
- 医疗质量控制中心管理办法
- 《西方经济学》(下册)课程教案
- 电子政务网络安全风险
- 某中学德育处主任工作评价量表
- 艰苦地区服役申请书范文
- 《网络与新媒体概论》教学课件合集
- 中式烹调师高级技师试题库及参考答案
- 急危重症护理学第四版电子版参考文献格式
- 第5章-系统模型课件
评论
0/150
提交评论