单片机实验程序

单片机实验程序

ID:38621084

大小:146.00 KB

页数:33页

时间:2019-06-16

单片机实验程序_第1页
单片机实验程序_第2页
单片机实验程序_第3页
单片机实验程序_第4页
单片机实验程序_第5页
资源描述:

《单片机实验程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机实验程序软件实验一1、分别编程实现两个16位无符号数相加,结果存放在40H41H中;两个16位的无符号数相减,结果存放在30H31H中。;两个16位无符号数相加,结果存放在30H31H中ORG0000HLJMPMAINORG0030HMAIN:MOVR3,#01H;输入加数高八位MOVR4,#23H;输入加数低八位MOVR5,#45H;输入被加数高八位MOVR6,#67H;输入被加数低八位MOVA,R4;将R4存入寄存器AADDA,R6;A与R6相加,结果存入AMOV31H,A;将低八位的和数存入31HMOVA,R3;将R3存入寄存器AADDCA,R5;A与R5相加,结果存入AMOV30

2、H,A;将高八位的和数存入30HSJMP$END;两个16位的无符号数相减,结果存放在30H31H中。ORG0000HLJMPMAINORG0030HMAIN:MOVR3,#12H;输入减数高八位MOVR4,#34H;输入减数低八位MOVR5,#56H;输入被减数高八位MOVR6,#78H;输入被减数低八位MOVA,R4;将R4存入寄存器ACLRC;C位清"0"SUBBA,R6;A与R6相减,结果存入AMOV31H,A;将低八位的差数存入31HMOVA,R3;将R3存入寄存器ASUBBA,R5;A与R5相减,结果存入AMOV30H,A;将高八位的差数存入30HSJMP$END2、编程实现X(X

3、≥40)Y=2X(20=40时,Y=X;20

4、于21(即X大于20),跳到BIGGER20JCSMALLER20;判断C的值,C不为0时则X小于20,跳到SMALLER20BIGGER40:MOVA,R2;X>=40时,将X的值赋给存放Y的值的R3MOVR3,ASJMP$BIGGER20:MOVA,R2;20

5、VR2,#80;输入累加的个数N存放到R2中MOVR0,#32H;输入参与累加数据的首个数据的地址ADDER:MOVA,@R0;将参与累加的数据的值赋给AADDA,31H;将A与当前累加数的和的低位(31H)相加结果存放在A中MOV31H,A;将求得的和数的低位放入31H中CLRA;对A清"0"ADDCA,30H;计算已得累加数高位与当前进位相加,结果存放在A中MOV30H,A;将求得的和数的高位放入30H中INCR0;R0中的数据加1LOOP:DJNZR2,ADDER;循环判断SJMP$END软件实验二1、编写R1×R2R3=R4R5R6,R1R2×R3R4=R4R5R6R7。;R1×R2R

6、3=R4R5R6ORG0000HLJMPMAINORG0030HMAIN:MOVA,R3;R1乘以低位数R3R3xR1=R5R6MOVB,R1MULABMOVR6,AMOVR5,BMOVA,R2;R1乘以高位数R2;R2xR1=R4AMOVB,R1MULABMOVR4,BADDA,R5;高。低乘数结果相加R5+A=R5MOVR5,A;R4+CY=R4MOVA,R4ADDCA,#00HMOVR4,ASJMP$END;R1R2×R3R4=R4R5R6R7ORG0000HLJMPMAINORG0030H;————R2乘以R3R4存放于R5R6R7MAIN:LCALLMULLMOVR5,30HMOVR

7、6,31HMOVR7,32H;调用子程序MULL;————R1先赋给R2,再乘以R3R4MOVA,R1MOVR2,ALCALLMULL;调用子程序MULLCLRC;进位清"0"MOVA,32H;R6加上32H中的值,存放于R6ADDA,R6MOVR6,AMOVA,R5;R5加上31H中的值,存放于R5ADDCA,31HMOVR5,AMOVA,#00H;30H加上进位C,存放于R4ADDCA,30H

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

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

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