微机课后作业的参考答案.docx

上传人:b****1 文档编号:1979864 上传时间:2023-05-02 格式:DOCX 页数:12 大小:16.98KB
下载 相关 举报
微机课后作业的参考答案.docx_第1页
第1页 / 共12页
微机课后作业的参考答案.docx_第2页
第2页 / 共12页
微机课后作业的参考答案.docx_第3页
第3页 / 共12页
微机课后作业的参考答案.docx_第4页
第4页 / 共12页
微机课后作业的参考答案.docx_第5页
第5页 / 共12页
微机课后作业的参考答案.docx_第6页
第6页 / 共12页
微机课后作业的参考答案.docx_第7页
第7页 / 共12页
微机课后作业的参考答案.docx_第8页
第8页 / 共12页
微机课后作业的参考答案.docx_第9页
第9页 / 共12页
微机课后作业的参考答案.docx_第10页
第10页 / 共12页
微机课后作业的参考答案.docx_第11页
第11页 / 共12页
微机课后作业的参考答案.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

微机课后作业的参考答案.docx

《微机课后作业的参考答案.docx》由会员分享,可在线阅读,更多相关《微机课后作业的参考答案.docx(12页珍藏版)》请在冰点文库上搜索。

微机课后作业的参考答案.docx

微机课后作业的参考答案

第88页

把30H放到R0中,即:

MOVR0,#30H;当直接复制程序到keilc中出现错误时,检查哪些标点符号,可以把解释去掉;为了在word看程序显得整洁,我加了空格,在keilc就不显得有那么整洁了,可以自己自行的调整;建议不要直接的复制,会出现提示不必要的错误!

当你重新的输入后,又没有错误了!

10>流程图:

结束

等待

R7-1=0?

把A中的数值放到R0中

然后,R0+1;A+1

初始化:

把30H放到R0中;

A中放00H;R7中放31H

开始

编程:

ORG0000H

AJMPSTART

START:

MOVR0,#30H

MOVA,#00H

MOVR7,#31H;用于设定循环的次数

LOOP:

MOV@R0,A

INCR0;实现R0+1

INCA;实现A+1

DJNZR7,LOOP

AJMP$

END

11>流程图

把5000H放到DPTR中;

把A中值放到5000H中

R7-1=0?

把50H中的内容放到A中

把A中的数实现自加;R1+1

50H放到R1中;

16放到R7;

R7-1=0?

把50H中的内容放到A;

把A中数值放到@DPTR中

然后;R1+1,A+1

初始化:

50H放到R1中;

把16放到R7;

4000H放到DPTR

开始

 

结束

编程:

ORG0000H

AJMPSTART

START:

MOVR1,#50H

MOVR7,#16H;设定循环的次数

MOVDPTR,#4000H

LOOP:

MOVA,@R1

MOVX@DPTR,A;把A中的内容放到片外

INCDPTR

INCR1

DJNZR7,LOOP

MOVR1,#50H

MOVA,@R1

MOVR7,#16

SUM:

INCR1

ADDA,@R1;实现求和

DJNZR7,SUM

MOVDPTR

MOVX@DPTR,A;把所求的和放到片外的5000H

AJMP$;等待

END

开始

12>流程图:

结束

把20H中的内容50H

60H-1=0

把20H中的内容与30H交换

CY置0

CY置1

比较20H与30H;是否20H大?

R0+1;

把@R0中内容放到30H

把20H放到R0中;把20H中的内容放到A中;把6放到60H中;把CY置1;

把TABLE中的数放到20H中

初始化:

把00H放到R1中;20H放到R0中;TABLE放到DPTR中;

把6放到R7中;

R7-1=0

是否放完?

编程:

ORG0000H

AJMPSTART

;*****************************************

;子程序,主要用来实现把最小值放到A中

COMPARE:

CJNEA,30H,LOOP1;比较

LOOP2:

JNBCY,RETURN

RET

RETURN:

MOVA,30H

RET

;******************************************

START:

MOVR1,#00

MOVR0,#20H

MOVDPTR,#TABLE

MOVR7,#6

;******************************************

;这个循环主要用来把TABLE中数都入20H中

LOOP:

MOVA,R1

MOVCA,@A+DPTR

MOV@R0,A

INCR1

INCR0

DJNZR7,LOOP

;*****************************************

MOVR0,#20H

MOVA,20H

MOV60H,#6;设置循环的次数

SETBCY;防止CY的初始值为0

LOOP1:

ACALLLOOP2

INCR0

MOV30H,@R0

DJNZ60H,COMPARE

MOV50H,A;把最小值放到50H中AJMP$

TABLE:

DB03H,43H,65H

DB0BCH,0ABH,01H

END

开始

13>流程图:

结束

等待

把30H中排好的数重新放到BLOCK中

是否比较完?

把00H置1

把这两个数交换

CY=0

把30H的内容放到A中;把C清零;R0自加1

把30H放到R0;把19放到R7;

把00H清零;

是否把数放完?

把BLOCK中的数放到30H中

初始化:

30H放到R0中;20放到R7;

BLOCK放到DPTR;

把两个相减,是否大于0?

编程:

ORG0000H

AJMPSTART

;******************************

;该子程序实现把数从小到大的排列(每一步的解释可以参考书85页)

SORTING:

CLR00H;互换标志清零

MOVR7,#19;设置比较的次数

MOVR0,#30H

LOOP1:

MOVA,@R0

MOV2BH,@R0

INCR0

MOV2AH,@R0

CLRC

SUBBA,@R0

JCNEXT

MOV@R0,2BH

DECR0

MOV@R0,2AH

INCR0

SETB00H

NEXT:

DJNZR7,LOOP1

JB00H,SORTING

RET

;*************************************

START:

MOVR0,#30H

MOVR7,#20;设置循环的次数

MOVDPTR,#BLOCK

;************************************

;把以片外BLOCK为首地址的数据,读到30H中

LOOP:

MOVA,#00H

MOVCA,@A+DPTR

MOV@R0,A

INCDPTR;

INCR0

DJNZR7,LOOP

;************************************

ACALLSORTING

MOVR7,#20

MOVDPTR,#BLOCK

MOVR0,#30H

;************************************

;实现把30H中排好序的数放到片外以BLOCK为首地址的区间内

LOOP3:

MOVA,@R0

MOVX@DPTR,A

INCR0

INCDPTR

DJNZR7,LOOP3

;************************************

AJMP$

BLOCK:

DB02H,43H,65H,19H,0AH

DB03H,53H,63H,13H,0BH

DB04H,33H,64H,18H,0CH

DB05H,23H,46H,28H,0DH

END

开始

 

15>流程图:

结束

等待

R6-1=0?

R7-1=0?

把B中的内容放到R7中

把A中的内容放到R6中

调用延时子程序

初始化:

把40放到A中;

把249放到B中;

编程:

ORG0000H

AJMPSTART

DELAY:

MOVR6,A

D1:

MOVR7,B

DJNZR7,$

DJNZR6,D1

RET

START:

MOVA,#40H

MOVB,#249;用于设定延时的时间

ACALLDELAY

AJMP$

END

第115页:

10>

开始

检查定时间是否到了?

P1.1口取反

选择不是工作方式2时,就要重新赋定时器的初值

启动定时器

选择定时器;

设定定时的工作方式;

计算定时器的初值;

流程图:

清除溢出标志位

编程:

ORG0000H

AJMPSTART

START:

MOVTMOD,#10H;选择定时器1工作方式1

MOVTH1,#0FFH

MOVTL1,#06H;定时1ms的初值

SETBTR1;启动定时器

LOOP:

MOVTH1,#0FFH

MOVTL1,#06H;重装定时器的初值

JNBTF1,$;定时时间不到时

CPLP1.1;P1.1取反

CLRTF1;清除溢出标志位

;(利用查询时要软件清零)

AJMPLOOP

END

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2