实验一内部ram数据传送程序设计

实验一内部ram数据传送程序设计

ID:32875610

大小:1.70 MB

页数:62页

时间:2019-02-17

实验一内部ram数据传送程序设计_第1页
实验一内部ram数据传送程序设计_第2页
实验一内部ram数据传送程序设计_第3页
实验一内部ram数据传送程序设计_第4页
实验一内部ram数据传送程序设计_第5页
资源描述:

《实验一内部ram数据传送程序设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验一内部RAM数据传送程序设计一、实验目的1.学习MCS-51微控制器汇编语言的编写。2.了解51微控制器内部RAM的读写及调试方法。二、实验设备用wave模拟软件进行实验.三、实验原理51微控制器片内RAM低128字节(00H~7FH)包含工作寄存器区(00H~1FH)、位操作区(20H~2FH)和数据区(30~7FH)。对该128字节的RAM区,均可采用直接寻址和间接寻址方式,若采用间接寻址用R0或R1作间址寄存器。特殊功能寄存器占用片内RAM地址空间80H~FFH,对它只能采用直接寻址方式。数据传送指令是汇编语言程序设计的基本要素,数据块传送也是程序设计的基本

2、技巧之四、实验内容及要求试编写程序:先把内部RAM的(30H~7FH)单元清零,然后将30H-7FH单元内55H的值.五、实验步骤1.打开计算机,打开wave软件,进入仿真环境,选择软件模拟器,选择仿真器,仿真头选择,选择CPU。2.打开“实验程序/8051程序/RAM.asm”程序3.按照程序注释设置断点。4.点击工具条的运行按钮,程序运行到第一个断点处,打开窗口-data数据观察窗口,进行观察30H-7FH单元的值。5.然后再点击运行按钮,程序会运行到第二个断点处,此时,观察30H-7FH单元的值变化。六、实验报告要求1.整理实验程序程序,理解程序。2.如果把程序

3、1中(30H~7FH)单元的内容改为66H,如何修改程序。3.理解数据指针:数据块传送若在内部RAM中进行,用什么作数据指针?若在外部RAM或ROM中进行,用什么作数据指针?4.存储器和数据存储器的地址空间可以重叠,对此如何解释?七、实验参考程序ORG0000HCLEAR:MOVR0,#30H;30H送R0寄存器MOVR6,#50H;4FH送R6寄存器(计数)CLR1:MOVA,#00H;00送累加器AMOV@R0,A;00送到30H-7FH单元INCR0;R0加162A-DJNZR6,CLR1;不到4F个字节再清NOP;此处设断点观察30H-7FH单元的值MOVR0

4、,#30HMOVR6,#50HLOOP:MOVA,#55HMOV@R0,AINCR0DJNZR6,LOOPAJMP$;此处设断点观察30H-7FH单元的值END图162A-实验二算术运算程序设计一、实验目的1.学习单片机算术运算、逻辑运算等指令。2.练习其指令的使用和编程方法。二、实验设备使用WAVE仿真器的软件模拟器进行实验。三、实验原理微控制器具有较强的加、减、乘、除等数学运算功能,这些运算可直接对8位无符号二进制数进行运算。利用溢出标志,还可以把加、减法运算用于有符号数的运算;用十进制调整指令,又可使运算直接用十进制(BCD码)来进行。应用算术运算指令要注意使用

5、条件,要靠灵活运用指令,进行适当的编程才能得到正确结果。四、实验内容及要求1.试编写多字节十进制加法程序:入口参数:R0—加数首地址;R1—被加数首地址;R2—字节数;出口参数:R0—和首地址。2.试编写双字节无符号整数相乘程序:入口参数:(R2R3)被乘数;(R6R7)乘数;出口参数:(R4R5R6R7)乘积。五、实验步骤1.打开计算机,进入wave仿真软件环境,建立项目文件,建立汇编源文件;启动编译、连接;进入调试状态。2.据实验内容要求,在寄存器窗口分别将R0、R1、R2置成20、30、02;在片内数据区(20H~21H),(30H~31H)单元分别置入加数和被

6、加数,用连续或单步的方式运行程序ADD.ASM,检查程序及结果是否正确。3.实验内容要求,在寄存器窗口分别给R2R3和R6R7设置数据,运行程序“实验程序/8051程序/RAMMUL.ASM”,检查程序及结果是否正确。六、实验报告要求1.画出程序框图,整理实验程序。2.若进行多字节二进制加法,程序1应如何修改?编写程序,并运行验证。3.每一实验程序做出3到5组实验数据,验证实验程序及结果是否正确,并记录。七、实验参考程序ADD.ASM:多字节十进制加法程序ORG0000HCLRCLOOP:MOVA,@R0;取低位加数ADDCA,@R1;低位相加DAA;调整MOV@R0

7、,A;低位和送R0地址62A-NCR0INCR1DJNZR2,LOOPNOPENDMUL.ASM:双字节无符号整数相乘程序ORG0000HQKUL:MOVA,R3MOVB,R7MULAB;R3*R7XCHA,R7;R7=(R3*R7)的低字节MOVR5,B;R5=(R3*R7)的高字节MOVB,R2MULAB;R2*R7ADDA,R5MOVR4,ACLRAADDCA,BMOVR5,A;R5=(R2*R7)的高字节MOVA,R6MOVB,R3MULAB;R3*R6ADDA,R4XCHA,R6XCHA,BADDCA,R5MOVR5,AMOVPSW.5,C

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。