清零程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一清零程序一、实验目的

掌握汇编语言设计和调试方法,熟悉键盘操作。

二、实验时间地点

时间:2014年4月15日

地点:8B204

三、实验内容

把2000H~20FFH单元的内容清零。

四、实验程序框图

五、实验程序

(1)基本程序

ORG 0000H

LJMP SE01

ORG 0640H

SE01: MOV R0,#00H

MOV DPTR,#2000H

LOO1: CLR A

MOVX @DPTR,A

INC DPTR

INC R0

CJNE R0,#00H,LOO1

LOOP:SJMP LOOP

END

(2)带注释的基本程序(为方便程序阅读仅对注释部分做了详细的注释而已)ORG 0000H

LJMP SE01

ORG 0640H

SE01: MOV R0,#00H ;(00H)送R0,R0 为计数器

MOV DPTR,#2000H ;(2000H)送DPTR

LOO1: CLR A ;累加器A 清零

MOVX @DPTR,A ;存储空间内容清零

INC DPTR ;DPTR 加1

INC R0 ;R0 加1

CJNE R0,#00H,LOO1 ;若R0 不等于00,则跳转至LOO1 继续循环

LOOP: SJMP LOOP

END

六、实验步骤

使用DICE-51单片机仿真系统,用连续或单步方式运行实验程序,检查执行程序前后2000~20FF单元中的内容变化。

首先打开DICE-51单片机仿真系统软件,新建一个文件名尾缀为.asm的文件,将程序输入到文件当中,打开程序存储器和数据存储器,任意改变存储单元中的内容,经编译,连接,装载后,先采用单步方式运行实验程序,由数据存储器中可以看到2000~20FF单元的内容逐渐清零,程序运行结束2000~20FF单元的内容都为0;再采用连续方式运行实验程序,实验结果为2000~20FF单元的内容都为0。

七、思考

假使把1000H~10FFH 中的内容改成FF,如何修改程序,请分别用连续和单步方式运行程序来完成验证。

修改后的程序如下所示:

ORG 0000H

LJMP LOO2

ORG 1000H

MOV R0,#00H

MOV DPTR,#1000H

LOO2:MOVX @DPTR,#0FFH

INC DPTR

INC R0

CJNZ R0,#00H,LOO2

SJMP $

END

验证步骤:

首先打开DICE-51单片机仿真系统软件,新建一个文件名尾缀为.asm的文件,将程序输入到文件当中,打开程序存储器和数据存储器,任意改变存储单元中的内容,经编译,连接,装载后,先采用单步方式运行实验程序,由数据存储器中可以看到1000~10FF单元的内容逐渐清零,程序运行结束1000~10FF单元的内容都为0;再采用连续方式运行实验程序,实验结果为1000~10FF单元的内容都为0。

八、实验心得

通过清零实验,我对DICE-51单片机仿真系统软件有了一个初步的认识,懂得新建源程序,编译,连接,装载,运行源程序,得到实验结果;怎么通过观察仿真系统中的程序存储器和数据存储器内容的变化,可以了解到单片机内部的结构具体的变化,从而验证实验程序的正确性,帮助我们更好地了解到单片机的结构。使用DICE-51单片机仿真系统软件能够更方便,快捷地校正,修改程序,DICE-51单片机仿真系统提供了一个相对具体的仿真环境,是学习单片机的一个有用工具。

相关文档
最新文档