编程实现将内部RAM

编程实现将内部RAM

ID:43222177

大小:353.00 KB

页数:61页

时间:2019-10-04

编程实现将内部RAM_第1页
编程实现将内部RAM_第2页
编程实现将内部RAM_第3页
编程实现将内部RAM_第4页
编程实现将内部RAM_第5页
资源描述:

《编程实现将内部RAM》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1、编程实现将内部RAM30H开始的10个单元内容和60H开始的10个单元内容对应一一互相交换,单元内容自定。00H69H99H68H88H67H77H66H66H65H55H64H44H63H33H62H22H61H11H60H内容地址0FFH39H00H38H0F0H37H0DEH36H0BCH35H9AH34H78H33H56H32H34H31H12H30H内容地址交换前内部RAM示意图0FFH69H00H68H0F0H67H0DEH66H0BCH65H9AH64H78H63H56H62H34H61H12H60

2、H内容地址00H39H99H38H88H37H77H36H66H35H55H34H44H33H33H32H22H31H11H30H内容地址交换后内部RAM示意图解题思路:1、程序功能----数据交换XCH/MOV2、程序结构----循环结构DJNZ控制循环3、数据存放位置----均在内部RAM@R0,@R1寻址4、传送方式----顺序传送指针同时INC开始设置源指针R0设置目的指针R1设置计数器R7取源数据AA目的单元A源数据单元计数器R7-1=0?结束NY修改源指针R0修改目的指针R1ORG0000HMOV

3、R0,#30HMOVR1,#60HMOVR7,#10LOOP:MOVA,@R0XCHA,@R1MOV@R0,AINCR0INCR1DJNZR7,LOOPSJMP$END2、编程比较内部RAM中X单元和Y单元存放的两个无符号数,找出其中的较大数,放入Z单元中。解题思路:1、程序功能----无符号数比较二数相减,判断借位标志。2、程序结构----分支程序条件判断指令JC/JNC3、数据存放位置----内部RAM伪指令定义X、Y、Z开始X-Y有借位吗?YZXZ结束NYXEQU20HYEQU30HZEQU40HORG00

4、00HMOVA,XCLRCSUBBA,YJNCL1MOVZ,YSJMPENL1:MOVZ,XEN:SJMP$END3、编程比较内部RAM中X单元和Y单元存放的两个有符号数,找出其中的较大数,放入Z单元中。解题思路:1、基本思路同上一题2、重点是判断有符号数的方法利用溢出标志OV的状态来判断两个有符号数的大小。若X-Y为正数,则OV=0时X>Y;OV=1时XY。开始X-Y结果为正数?YZXZ结束NY有益出?有益出?YNYNYZXEQU20HYEQU30HZE

5、QU40HORG0000HMOVA,XCLRCSUBBA,YJBACC.7,NGJBPSW.2LTGT:MOVZ,XSJMPENNG:JBPSW.2,GTLT:MOVZ,YEN:SJMP$END4、编程实现数据传送:假定数据串存放在内部RAM从30H开始的连续单元中,数据串长度存放在2FH单元,传送的目的区起址是内部RAM从40H开始的连续单元。(具体数据可以自己设定)0FH36H0AH35H90H34H78H33H56H32H34H31H12H30H07H2FH内容地址0FH46H0AH45H90H44H78H43

6、H56H42H34H41H12H40HXXH3FH内容地址解题思路:1、程序功能----数据传送MOV2、程序结构----循环结构DJNZ控制循环3、数据存放位置----均在内部RAM@R0,@R1寻址4、传送方式----顺序传送指针同时INC开始设置源指针R0设置目的指针R1设置计数器R7取源数据AA目的单元计数器R7-1=0?结束NY修改源指针R0修改目的指针R1ORG0000HMOVR0,#2FHMOVR1,#40HMOVA,@R0MOVR7,AINCR0LOOP:MOVA,@R0MOV@R1,AINCR0

7、INCR1DJNZR7,LOOPSJMP$END5、编程实现数据传送:假定数据串存放在内部RAM从30H开始的连续单元中,数据串长度存放在2FH单元,传送的目的区起址是内部RAM从40H开始的连续单元。(数据按反向顺序传送)0FH36H0AH35H90H34H78H33H56H32H34H31H12H30H07H2FH内容地址12H46H34H45H56H44H78H43H90H42H0AH41H0FH40HXXH3FH内容地址解题思路:1、程序功能----数据传送MOV2、程序结构----循环结构DJNZ控制循环3

8、、数据存放位置----均在内部RAM@R0,@R1寻址4、传送方式----反向传送指针一INC、一DEC反向传送的关键是要设置好指针的初始化值,数据区的开始地址容易找到,一般程序中都表示出来了,但数据区的结束地址比较难找,它和数据的长度有关。数据区结束地址=数据区开始地址+数据长度-1开始设置源指针R0设置目的指针R1设置计数器R7取源数据A

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

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

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