文档库 最新最全的文档下载
当前位置:文档库 › 03 实验三 数据区传送子程序设计

03 实验三 数据区传送子程序设计

实验三:数据区传送子程序设计

院(系):电子工程学院

课程名称:单片机原理及应用 日期:

4.3.1 实验目的

1. 掌握汇编语言指令的使用规范。

2. 掌握汇编语言程序设计方法。

3. 掌握MCS-51单片机的存储器结构。

4. 掌握单片机中数据存储形式。

4.3.2 实验预习

1.熟悉Keil 集成编译环境的使用方法。

2. 复习单片机指令系统。

3. 复习利用Keil 集成编译环境查看单片机存储器状态的方法。

4.3.3 实验原理

本实验需完成数据块的移动,用循环和分支程序完成,循环次数控制可用DJNZ 指令,分支可用条件判断指令。 4.3.4 预作实验任务

1. 补全程序以完成程序功能。

程序功能:根据R6的值给R7赋值:

?????<-=>=0

61060

0617R R R R MOV A,R6

;取出R6 COMP

;R6=0则转移到COMP ACC.7,POSI

;R6>0则转移到POSI MOV A,

;R6<0则R7=-1(0FFH ) SJMP COMP

POSI:MOV A,

;R6>0则R7=1

COMP:MOV R7, ;保存结果

2. 补全程序以完成程序功能。

程序功能:求1~10的累加和,结果存放到R7:

MOV A, ;A清零

MOV R0,#01H ;R0赋初值

MOV R7, ;设置循环次数

NEXT: ADD A,

INC

DJNZ ,NEXT

MOV R7, ;保存结果

3. 编写程序,将内部数据存储器20H~3FH这32个字节奇数地址的数据全部设为55H;偶数地址的数据全部设为0AAH。

4. 在项目3的基础上,编写程序,将20H~3FH的数据按顺序存放到40H~5FH。

5. 在项目3的基础上,编写程序,将20H~3FH的数据按逆序存放到

5FH~40H。

4.3.5 实验任务

编写程序,用伪操作指令给程序存储器0200H~023FH这32个字节任意赋值,然后从0200H单元开始查找,将找到的正数按顺序存放到内部数据存储器20H开始的存储区,将找到的负数按顺序存放到40H开始的存储区。

4.3.6 实验步骤

1.使用Keil C51软件建立工程,编辑、编译程序,程序代码如下:

3.用Keil软件运行程序,并查看内部数据存储器的状态。4.运行程序,排除程序错误。

5.记录实验结果并分析。

相关文档
相关文档 最新文档