教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 综合文档 >

单片机原理及应用及C51程序设计 谢维成 杨加国 第二版 第三章

来源:网络收集 时间:2026-08-26
导读: 习题三 1.在MCS-51单片机中,寻址方式有几种?其中对片内RAM可以用哪几种寻址方式?对片外RAM可以用哪几种寻址方式? 答:寻址方式可分为数的寻址和指令寻址,数的寻址有:常数寻址(立即寻址)、寄存器数寻址(寄存器寻址)、存储器数寻址(直接寻址方式、

习题三

1.在MCS-51单片机中,寻址方式有几种?其中对片内RAM可以用哪几种寻址方式?对片外RAM可以用哪几种寻址方式?

答:寻址方式可分为数的寻址和指令寻址,数的寻址有:常数寻址(立即寻址)、寄存器数寻址(寄存器寻址)、存储器数寻址(直接寻址方式、寄存器间接寻址方式、变址寻址方式)和位寻址,指令的寻址有绝对寻址和相对寻址。片内RAM寻址有:寄存器寻址、直接寻址方式和寄存器间接寻址方式。片外RAM寻址有:寄存器间接寻址方式。

2.在对片外RAM单元寻址中,用Ri间接寻址与用DPTR间接寻址有什么区别?

答:片外数据存储器寻址中,用Ri间接寻址只能访问低端的256字节单元,而用DPTR作指针间接访问可访问整个64K字节。

3.在位处理中,位地址的表示方式有哪几种?

答:1.直接位地址(00H~0FFH)。例如:20H

2.字节地址带位号。例如:20H.3表示20H单元的3位。

3.特殊功能寄存器名带位号。例如:P0.1表示P0口的1位。

4.位符号地址。例如:TR0是定时/计数器T0的启动位。

4.写出完成下列操作的指令。

(1)R0的内容送到R1中。

MOV A,R0

MOV R1,A

(2)片内RAM的20H单元内容送到片内RAM的40H单元中。

MOV 40H,20H

(3)片内RAM的30H单元内容送到片外RAM的50H单元中。

MOV A,30H

MOV R0,#50H

MOVX @R0,A

(4)片内RAM的50H单元内容送到片外RAM的3000H单元中。

MOV A,50H

MOV DPTR,#3000H

MOVX @DPTR,A

(5)片外RAM的2000H单元内容送到片外RAM的20H单元中。

MOV DPTR,#2000H

MOVX A,@DPTR

MOV 20H,A

(6)片外RAM的1000H单元内容送到片外RAM的4000H单元中。

MOV DPTR,#1000H

MOVX A,@DPTR

1

MOV DPTR,#4000H

MOV @DPTR,A

(7)ROM的1000H单元内容送到片内RAM的50H单元中。

MOV A,#0

MOV DPTR,#1000H

MOVC A,@A+DPTR

MOV 20H,A

(8)ROM的1000H单元内容送到片外RAM的1000H单元中。

MOV A,#0

MOV DPTR,#1000H

MOVC A,@A+DPTR

MOVX @DPTR,A

5.区分下列指令有什么不同?

(1)MOV A,20H和MOV A,#20H

答:前者源操作数是直接寻址,后者源操作数立即寻址。

(2)MOV A,@R1和MOVX A,@R1

答:前者源操作数是访问片内数据存储器,后者源操作数访问片外数据存储器低256字节。

(3)MOV A,R1和MOV A,@R1

答:前者源操作数是寄存器寻址,后者源操作数寄存器间接寻址。

(4)MOVX A,@R1和MOVX A,@DPTR

答:前者源操作数是访问片外数据存储器低256字节,后者源操作数访问片外数据存储器整个64K字节。

(5)MOVX A,@DPTR和MOVC A,@A+DPTR

答:前者源操作数是访问片外数据存储器,后者源操作数访问程序数据存储器。

6.设片内RAM的(20H)=40H,(40H)=10H,(10H)=50H,(P1)=0CAH。分析下列指令执行后片内RAM的20H、40H、10H单元以及P1、P2中的内容。

MOV R0,#20H

MOV A,@R0 ;A=40H

MOV R1,A ;R1=40H

MOV A,@R1 ;A=10H

MOV @R0,P1 ;(40H)=0CAH

MOV P2,P1 P2=0CAH

MOV 10H,A (10H)=10H

MOV 20H,10H (20H)=10H

结果:(20H)=10H、(10H)=10H、(40H)=0CAH、P2=0CAH和P1=0CAH

8.已知(A)=02H,(R1)=7FH,(DPTR)=2FFCH,片内RAM(7FH)=70H,片外RAM(2FFEH)=11H,ROM(2FFEH)=64H,试分别写出以下各条指令执行后目标单元的内容。

2

(1)MOV A,@R1 结果:累加器A等于70H

(2)MOVX @DPTR,A 结果:片外RAM(2FFCH)单元等于02H

(3)MOVC A,@A+DPTR 结果: 累加器A等于64H

(4)XCHD A,@R1 结果:累加器A等于00H,片内RAM(7FH)单元等于72H

9.已知:(A)=78H,(R1)=78H,(B)=04H,CY=1,片内RAM(78H)=0DDH,(80H)=6CH,试分别写出下列指令执行后目标单元的结果和相应标志位的值。

(1)ADD A,@R1 ;累加器A等于55H,CY等于1

(2)SUBB A,#77H ;累加器A等于00H,CY等于0

(3)MUL AB ;累加器A等于E0H,B寄存器等于01H,CY等于1,OV等于0

(4)DIV AB ;累加器A等于1EH,B寄存器等于00H,CY、OV等于0

(5)ANL 78H,#78H ;片内RAM(78H)单元等于58H

(6)ORL A,#0FH ;累加器A等于7FH

(7)XRL 80H,A ;片内RAM(80H)等于14H

10.设(A)=83H,(R0)=17H,(17H)=34H,分析当执行完下面指令段后累加器A、R0、17H单元的内容。

ANL A,#17H ;A=03H

ORL 17H,A ;(17H)=37H

XRL A,@R0 ;A=34H

CPL A ;A=CBH

结果:A=CBH,(R0)=17H,(17H)=37H

11.写出完成下列要求的指令。

(1)累加器A的低2位清零,其余位不变。

ANL A,#11111100B

(2)累加器A的高2位置“1”,其余位不变。

ORL A,#11000000B

(3)累加器的高4位取反,其余位不变。

XRL A,#11110000B

(4)累加器第0位、2位、4位、6位取反,其余位不变。

XRL A,#01010101B

12.说明LJMP指令与AJMP指令的区别?

答:LJMP指令后面提供的是16位目标地址,所以可以转移到64KB程序存储器的任意位置,缺点是:执行时间长,字节数多。

AJMP指令后带的是11位直接地址,执行时,先将程序指针PC的值加2(该指令长度为2字节),然后把指令中的11位地址addr11送给程序指针PC的低11位,而程序指针的高5位不变,只能在当前2K范围内转移。

13.设当前指令CJNE A,#12H,10H的地址是0FFEH,若累加器A的值为10H,则该指令执行后的PC值为多少?若累加器A的值为12H呢?

3

答:指令执行后的PC值为1011H,若累加器A的值为12H,则指令执行后的PC值为1001H。

14.用位处理指令实现P1.4=P1.0 (P1.1 P1.2) /P1.3的逻辑功能。

程序:

MOV C,P1.1

ORL C,P1.2

ANL C,P1.0

ORL C,/P1.3

MOV P1.4,C

15.下列程序段汇编后,从1000H单元开始的单元内容是什么?

ORG 1000H

TAB: DB 12H,34H

DS 3

DW 5567H,87H

答:(1000H)=12H,(1001H)=34H,(1002H)=00H,(1003H)=00,(1004H)=00,(1005H)=67H,(1006H)=55H,(1007H)=87H,(1008H)=00H

16.试编一段程序,将片内RAM的20H、21H、22H单元的内容依次存入片外RAM的20H、21H、22H中。

程序:

MOV R0,#20H

MOV R2,#03H

LOOP:MOV A,@R0

MOVX @R0,A

INC DJNZ R0 R2,LOOP

SJMP $

17.编程实现将片外RAM的2000H~2030H单元的内容,全部搬到片内RAM的20H单元开始位置,并将源位置清零。

程序:

MOV R0,#20H

MOV DPTR,#2000H

MOV R2,#30H

LOOP: MOVX A,@DPTR

MOV @R0,A

MOV A,#00

MOVX @DPTR,A

4 INC INC DJNZ DPTR R0 R2,LOOP

SJMP $

18.编程将片外RAM的1000H单元开始的100个字节 …… 此处隐藏:2845字,全部文档内容请下载后查看。喜欢就下载吧 ……

单片机原理及应用及C51程序设计 谢维成 杨加国 第二版 第三章.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/1892574.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)