77范文网 - 专业文章范例文档资料分享平台

《单片机原理及接口技术(修订本)》部分习题与参考答案(2)

来源:网络收集 时间:2020-02-20 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

XCH A,60H MOVX @DPTR,A

3-14 已知(A)=5BH,(R1)=40H,(40H)=C3H,(PSW)=81H,试写出各条指令的执行结果,并说明程序状态字的状态。

(1) XCH A, R1 (2) XCH A, 40H

(3) XCH A,@R1 (4) XCHD A, @R1 (5) SWAP A (6) ADD A, R1 (7) ADD A, 40H (8) ADD A, #40H (9) ADDC A, 40H (10) SUBB A, 40H (11)SUBB A, #40H 答:

(1)结果:(A)←→(R1),(A)=40H,(R1)=5BH,(PSW)=81H

(2)结果:(A)←→(40H),(A)=C3H,(40H)=5BH,(PSW)=80H

(3)结果:(A)←→((R1)),(A)=C3H,((R1))=(40H)=5BH,(PSW)=80H

(4)结果:(A)0~3←→((R1))0~3,(A)=53H,((R1))=(40H)=CBH,(PSW)=80H

(5)结果:(A)0~3←→(A)4~7,(A)=B5H,(PSW)=81H (6)结果:A←(A)+(R1),(A)=9BH,(PSW)=05H

(7)结果:A←(A)+(40H),(A)=1EH,(PSW)=80H (8)结果:A←(A)+40H,(A)=9BH,(PSW)=05H (9)结果:A←(A)+(40H)+CY,(A)=1FH,(PSW)=81H (10)结果:A←(A)-(40H)-CY,(A)=97H,(PSW)=85H (11)结果:A←(A)- 40H - CY,(A)=1AH,(PSW)=01H

3-26 已知(A)=5BH,(R1)=40H,(40H)=C3H,(PSW)=81H,试写出各条指令的执行结果,并说明程序状态字的状态。

(1) XCH A, R1 (2) XCH A, 40H

(3) XCH A,@R1 (4) XCHD A, @R1 (5) SWAP A (6) ADD A, R1 (7) ADD A, 40H (8) ADD A, #40H (9) ADDC A, 40H (10) SUBB A, 40H (11)SUBB A, #40H

答:

指令LJMP addr16是长转移指令,指令中提供了16位目的地址,寻址范围是64KB。 指令AJMP addr11是绝对转移指令,指令中11位目的地址,其中a7~a0在第二字节,a10~a8则占据第一字节的高3位,寻址范围是与PC当前值(本指令所在地址+本条指令所占用的字节数2)在同一个2K的区域内。

3-27 试分析以下两段程序中各条指令的作用。程序执行完将转向何处? (1) MOV P1,#0CAH

MOV A,#56H JB P1.2 ,L1 JNB ACC.3,L2

L1: ┇

L2: ┇

(2) MOV A,#43H JB ACC.2 ,L1 JBC ACC.6,L2

?

L1: ┇ L2: ┇

答:

(1) MOV P1,#0CAH ;P1←CAH,P1=CAH=11001010B MOV A,#56H ;A←56H,A=56H=01010110B JB P1.2,L1 ;若P1.2=1,则转移至L1 JNB ACC.3,L2 ;若ACC.3=0,则转移至L2 … L1: …

L2: …

执行完本段程序后将转移至L2,因为P1.2=0,ACC.3=0,所以转至L2。

(2) MOV A,#43H ;A←43H,A=43H=01000011B JB ACC.2,L1 ;若ACC.2=1,则转移至L1 JBC ACC.6,L2 ;若ACC.6=1,则转移至L2,同时将ACC.6清零

L1: … L2: …

执行完本段程序后将转移至L2,因为ACC.2=0,ACC.6=1,所以转至L2,并且将ACC.6清零。

第4章 汇编语言程序设计

4-3 存放在内部RAM的DATA单元中的变量X是一个无符号整数,试编程计算下面函数的函数值并存放到内部RAM的FUNC单元中。

答:

ORG 0300H MOV A,DATA CJNE A,#20,LOP1 LOP1: JC LOP3

CJNE A,#50,LOP2 LOP2: JC LOP4 MOV B,#1 LJMP LOP5 LOP3: MOV B,#2 LJMP LOP5 LOP4: MOV B,#5 LOP5: MUL AB

MOV FUNC,A

RET

4-5 某单片机应用系统有4×4键盘,经键盘扫描程序得到被按键的键值(00H~0FH)存放在R2中,16个键的键处理程序入口地址分别为KEY0、KEY1、KEY2、?、KEY15。试编程实现,根据被按键的键值,转对应的键处理程序。

答: ORG 0500H

MOV DPTR,#JPTAB MOV A,R2 RL A

JMP @A+DPTR

JPTAB: AJMP KEY0 AJMP KEY1

AJMP KEY2 ……

AJMP KEY15 KEY0: … KEY1: … KEY2: … ……

KEY15: …

4-6 试编程将片内 40H~60H单元中内容传送到外部RAM以2000H为首地址的存储区中。

答: ORG 0600H MOV R0,#40H MOV DPTR,#2000H MOV R7,#21H LOOP: MOV A,@R0 MOVX @DPTR,A INC R0 INC DPTR

DJNZ R7,LOOP RET

4-7 试编程将片内 40H~60H单元中内容传送到外部RAM以2000H为首地址的存储区中。

答: ORG 0700H

MOV DPTR,#DATA MOV R7,#10 LOOP: MOVX A,@DPTR ORL A,#80H MOVX @DPTR,A INC DPTR

DJNZ R7,LOOP RET

4-8 编写程序将外部RAM 3000H开始的13个单元中的数据隔一个传送到内部RAM 30H开始的区域。

答: ORG 0800H MOV DPTR,#3000H MOV R0,#30H MOV R7,#7 LOOP: MOVX A,@DPTR MOV @R0,A INC DPTR INC DPTR INC R0

DJNZ R7,LOOP RET

4-9 编程将片外RAM地址为1000H~1030H的数据块,全部搬迁到片内RAM 30H~60H中,并将原数据区全部清0。

答: ORG 0900H

MOV DPTR,#1000H MOV R1,#30H MOV R7,#31H LOOP: MOVX A,@DPTR MOV @R1,A CLR A

MOVX @DPTR,A INC DPTR INC R1 DJNZ R7,LOOP RET

4-10 试编程把长度为10H的字符串从内部RAM首地址为DAT1的存储器中向外部RAM首地址为DAT2的存储器进行传送,一直进行到遇见字符CR或整个字符串传送完毕结束。

答: ORG 0A00H

MOV R1,#DAT1 MOV DPTR,#DAT2 MOV R6,#10H LOOP1: MOV A,@R1

CJNE A,#0DH,LOOP2 LJMP LOOP3 LOOP2: MOVX @DPTR,A INC R1 INC DPTR DJNZ R6,LOOP1 LOOP3: RET

4-18 设在外部RAM 2000H~2004H单元中,存放有5个压缩BCD码,试编程将它们转换成ASCⅡ码,存放到以2005H单元为首地址的存储区中。

答: ORG 1200H MOV DPTR,#2000H MOV R0,#30H MOV R7,#5 LOP1: MOVX A,@DPTR ANL A,#0FH ADD A,#30H MOV @R0,A INC R0

MOVX A,@DPTR ANL A,#0F0H SWAP A

ADD A,#30H

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库《单片机原理及接口技术(修订本)》部分习题与参考答案(2)在线全文阅读。

《单片机原理及接口技术(修订本)》部分习题与参考答案(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/743620.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: