单片机第4章习题参考答案

单片机第4章习题参考答案

ID:11671993

大小:76.50 KB

页数:7页

时间:2018-07-13

单片机第4章习题参考答案_第1页
单片机第4章习题参考答案_第2页
单片机第4章习题参考答案_第3页
单片机第4章习题参考答案_第4页
单片机第4章习题参考答案_第5页
资源描述:

《单片机第4章习题参考答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第4章部分习题答案-7-作业:7、8、9、10、11、15、17、19、20-7-4.7设内部RAM20H单元有两个非零的BCD数,编写求两个BCD数的积并把积送入21H单元的程序。ORG1000HMOVA,20HMOVB,A;保存SWAPAANLA,#0FH;取高4位ANLB,#0FH;取低4位MULABMOVB,#0AHDIVAB;转换成BCD码的形式SWAPAORLA,BMOV21H,ASJMP$END4.8已知从内部RAMBLOCK单元开始存放有一组带符号数,数的个数存放在LEN单元。编写可以统计正数和负数个数并分别存入NUM和

2、NUM+1单元的程序。org1000hnumdata30hlendata20hblockdata40hmovr0,#blockmovnum,#00h;保存正数个数movb,#00h;保存负数个数loop:mova,@r0incr0jbacc.7,negincnumsjmpnextneg:incbnext:djnzlen,loopmovnum+1,bsjmp$end4.9设X为一无符号数,存放在内部RAM的VAX单元,Y存放在FUNC单元。编写满足如下关系的程序:org2000hvaxdata20hfuncdata30hmova,vaxc

3、jnea,#32h,comp1comp1:jcnext1movfunc,asjmpdonenext1:cjnea,#14h,comp2comp2:jcnext2movb,#05hmulabmovfunc,asjmpdonenext2:clrcrlcamovfunc,adone:sjmp$end4.10在例4.6的128分支程序中,若用LJMP指令代替AJMP指令,以便分支程序可以放在64KB地址范围的任何位置。修改原程序,修改后的程序最多可以实现多少分支。LJMP是三字节指令,最大分支数N应满足条件:N×3<256(即不超过A的存储范围

4、),所以N=85。修改后的程序:ORG2100HMOVA,R3RLA-7-ADDA,R3MOVDPTR,#BRTABJMP@A+DPTR┆BRTAB:LJMPROUT00LJMPROUT01LJMPROUT02┆LJMPROUT85ROUT00:┆┆ROUT85:┆END4.11从外部RAM的SOURCE(二进制8位)开始有一数据块,该数据块以$字符结尾,编写程序,把它们传送到以内部RAM的DIST为起始地址的区域($字符也要传送)org2000hsourcedata10hdistdata20hmovp2,#00hmovr0,#sour

5、cemovr1,#distnext:movxa,@r0incr0mov@r1,aincr1cjnea,#24h,nextdone:sjmp$end4.12将习题4.11中的Source改为16位的,则将程序中的r0改成dptr即可。4.13在外部RAM的低256地址单元区,有起始地址为SOUCE且长度在LEN单元的数据块。编写能对它们进行奇偶校验的程序。凡满足奇校验(奇数个1)的数据均送到内部RAM起始地址为DIST的存储区。org2000hlendata10hsourcedata20hdistdata50hmovr0,#sourcem

6、ovr1,#distmovr2,#lenmovp2,#00hloop:movxa,@r0incr0jnbpsw.0,nextmov@r1,aincr1next:djnzr2,loopsjmp$end4.14将习题4.13中的Source改为16位的,则将原来程序中的r0改成dptr即可。4.15外部RAM从2000H到2100H有一数据块,编写程序将它们传送到从3000H到3100H区域。ORG0HMOVDPTR,#2000HNEXT:MOVXA,@DPTRORLDPH,#10H;将DPH从20H变成30HMOVX@DPTR,AANLD

7、PH,#0EFH;将DPH从30H变成20HINCDPTRMOVA,DPHCJNEA,#21H,NEXTMOVXA,@DPTRMOVDPH,#31HMOVX@DPTR,A;传送2100H单元中的内容到3100HSJMP$END-7-4.16片内RAM中有一数据块起始地址为FIRST+1,长度存放在FIRST中且不为0,统计数据块中正偶数和负奇数的个数,分别存放在PAPE单元和NAOE单元。ORG0HPAPEDATA20HNAOEDATA21HFIRSTDATA30HMOVPAPE,#00HMOVNAOE,#00HMOVR0,#FIRST

8、INCR0;数据块的起始地址LOOP:MOVA,@R0INCR0JBACC.7,NEXT;负数JBACC.0,PP;如果是正奇数,则取下一个数INCPAPESJMPPPNEXT:JNBACC.0,PP;如果

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

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

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