微处理器原理与应用 实验日志
实验题目:
顺序程序设计:拆字和拼字
实验目的:
1、掌握顺序程序编写方法
2、掌握拆字和拼字方法
3、学会编写和调试程序的过程和方法
4、掌握C51编程方法。
实验要求:
1、 阅读、运行并调试已给的程序;
2、 模仿已给程序分别汇编程序和C程序完成拼字程序;
实验主要步骤:
1、 启动计算机,进入Keil C51的集成开发环境;
2、 根据已给程序分别编辑汇编程序和C程序;
3、 编辑完成以后对程序进行编译,生成目标代码;
4、 运行、调试目标代码和进行结果检查;
5、 根据要求分别编写汇编程序和C程序;
6、 编译,生成目标代码,分别采用单步和宏单步运行程序,观察有关单元中的内容的变化;
7、 修改内存单元中的内容在观察存储单元内容的变化;
实验结果:
汇编程序:
ORG 0000H
AJMP START
ORG 0100H
START: MOV A,30H
ANL A,#0FH
SWAP A
MOV 32H,A
MOV A,31H
ANL A,#0FH
ORL 32H,A
SJMP $
END
#include"reg51.h"
#include"absacc.h"
void main()
{
DBYTE[0x30]=0x12;
DBYTE[0x31]=0x34;
DBYTE[0x30]<<=4; //20
DBYTE[0x31]&=0x0f;//04
DBYTE[0x32]=DBYTE[0x30]|DBYTE[0x31];
}
心得体会:
在本次实验中,发现输入数据有两种方法,一种是在程序中直接赋值,另一种是直接双击0x0200这个单元,就可以对它赋值,最后运行结果一样,但后一种明显改动数据方便,这让我意识到了优化程序的重要性。在第三个实验中,对用C语言编写的程序,不知道或语句怎么写,在请教老师之后得以解决,但是,在编译程序时没有问题,运行程序出现了错误。一直没有找到问题,在最后重新建立工程,文件等必要步骤之后,就完成了程序的运行。
展开阅读全文