您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页单片机习题_3

单片机习题_3

来源:华佗小知识


第3章 MCS-51的指令系统

一、填空

1. 执行下列指令组后,A=( ),B=( )。

MOV A,#33H ; ADD A,#49H;

MOV B,A ;

ADD A,#00H ;

DA A ;

2. 已知(R1)=3FH,(3FH)=11H,(40H)=00H执行下列指令组后

(R1)=( ),(3FH)=( ),(40H)=( )。

INC R1;

INC @R1;

INC 40H;

3. 已知(31H)=21H,(32H)=04H,执行下列指令组后 (31H)=( ),(32H)=( )

PUSH 31H PUSH 32H

POP 31H

POP 32H

4. 执行下列指令组后,A=( ),OV=( ),P=( )。

MOV A,#0B4H

ADD A,#00H

SUBB A,#51H

5. 假定外部数据存储器2000H单元的内容为80H,执行下列指令后,累加器A中的内容为( )。

MOV P2,#20H

MOV R0,#00H

MOVX A,@R0

6. 假定累加器A的内容为30H,执行指令:

1000H: MOVC A,@A+PC

后,把程序存储器( )单元的内容送累加器A中。

7. 假定(A)=85H,(R0)=20H,(20H)=0AFH。执行指令:

ADD A,@R0

后,累加器A=( ),Cy=( ),AC=( ),OV=( )。

8. 假定(A)=85H,(20H)=0FFH,(Cy)=1,执行指令:

ADDC A,20H

后,累加器A=( ),Cy=( ),AC=( ),OV=( )。

9. 假定(A)=0FFH,(R3)=0FH,(30H)=0F0H,(R0)=40H,(40H)=00H。执行指令:

INC INC

A R3

30H

INC

INC @R0

后,累加器 A=( ),R3=( ),30H=( ),40H=( )。

10. 假定(A)=56H,(R5)=67H。执行指令:

ADD A,R5

DA A

后,累加器 A=( ),Cy=( )。

11. 假定(A)=0FH,(R7)=19H,(30H)=00H,(R1)=40H,(40H)=0FFH。执行指令:

DEC A DEC R7

DEC 30H

DEC @Ri

后, A=( ),R7=( ),30H=( ),40H=( )。

12. 假定(A)=0C5H,执行指令:

SWAP A

后,累加器A的内容为( )。

13. 执行下列指令序列:

MOV C,P1.0 ANL C,P1.1

ANL C,/P1.2

MOV P3.0,C

后,所实现的逻辑运算式为( )。

14. 访问8031片外数据存储器MOVX指令采用的是 寻址方式。访问片外程序存储器MOVC指令采用的是 寻址方式。

15. 设(A)=55H,(R5)=AAH,则执行ANL A,R5指令后的结果是(A)= ,(R5)= 。

16. 假定(SP)=40H , (39H)=30H,(40H)=60H。执行下列指令:

POP DPH

POP DPL

后,DPTR的内容为 ,SP的内容是 。

17. MCS-51单片机指令系统有111条指令,有五种指令类型,分别是:数据

传送指令, 指令、 指令、 指令、 指令及 指令。

18 . MCS—51单片机指令系统有111条指令,有六种寻址方式,分别是:

寻址、 寻址、 寻址、 寻址、 寻址 寻址及 寻址。

19. 在单片机应用系统中,外部设备与外部数据存储器传送数据时,使用 指令。

二、判断

1. MOV A,@R0这条指令中,@R0的寻址方式称之为寄存器间址寻址。( )

2. MOV A,30H这条指令执行后的结果是(A)=30H。( )

3. MOV A,@R7,将R7单元中的数据作为地址,从该地址中取数,送入A中。( )

4. 指令字节数越多,执行时间越长。( )

5. 子程序调用时自动保护断点和现场。( )

6. 内部寄存器Rn(n=0~7)作为间接寻址寄存器。( )

7. 算术运算类指令一般不影响标志位。 ( )

8. CPU每取一个指令字节,立即使程序计数器PC自动加1。(9. 判断程序对错:十进制数19和13相减。 ( )

MOV A,#19H

CLR C

SUBB A,#13H

DA A

10. RC A为循环左移指令( )

11. MOV A,30H为立即寻址方式( )

12. MOV A,@A+DPTR是一条查询指令( )

13. MUL AB的执行结果是高8位在A中,低8 位在B中(

) )

14.MCS-51的特殊功能寄存器分布在60H~80H地址范围内。( )

15. MOVC A @A +DPTR ,这是条相对寻址指令。( )

16. 当MCS-51上电复位时,堆栈指针SP=00H。 ( )

17. 调用子程序指令(如:LCALL)及返回指令(如:RET)与堆栈有关但与PC无关。( )

18. 下面几条指令是否正确:

MOV @R1,#80H ( ), INC DPTR ( ), CLR R0 ( )

MOV @R1,#80H ( ),ANL R1,#0FH ( ),ADDC A,C ( )

XOR P1,#31H ( )

19. 在单片机应用系统中,外部设备与外部数据存储器传送数据时,使用MOV指令。( )

三、简答

1.执行指令:MOV A,R4 ;

在程序状态字PSW中 ⑴ RS1=0,RS0=0; ⑵ RS1=1,RS0=0的两种情况下,上述指令执行结果有何不同?

2.MCS-51 单片机堆栈有何特点?若SP=60H,PC=2000H,标号LABEL所在的地址为3000H,问执行长调用指令LCALL LABEL后,堆栈指针和堆栈的内容发生什么变化?PC的值等于什么?

3. 简述转移指令AJMP addr11,SJMP rel,LJMP addr16及JMP @A+DPTR的应用场合。

4. 对访问内部RAM和外部RAM,各应采用哪些寻址方式?

四、选择

1. 将累加器中的数据送到片外RAM40H,可执行指令 ( )

(A) MOVX 40H,A (B) MOV R6,#40H,MOV @R6,A

(C) MOV R0,#40H MOVX @R0,A

(D) MOV R6,#40H MOVX @R6,A

2. 对程序存储区数据传送,应采用助记符为

(A) MOV (B) MOVX (C) MOVC (D) PUSH

3. 下列转移范围是2KB的控制转移指令是

(A) SJMP rel (B)LJMP addr16 (C) AJMP addr11 (D) JMP

@A+DPTR

4. 执行以下程序段

MOV SP,#3AH MOV A,#20H

MOV B,#30H

PUSH ACC

PUSH B

POP ACC

POP B

后, A=( )和B=( )的内容为:

(A)20H,30H (B)30H,20H (C)3AH,30H (D)3AH,3AH

5. 假定(A)=83H,(R0)=17H,(17H)=34H,执行以下程序段

ANL A,#17H

ORL 17H,A

XRL A,@R0

CPL A

后, A=( )的内容为

(A) CBH (B)03H (C)EBH (D)C8H

6. 下列指令中划线部分操作数属于寄存器寻坊方式的有( )。

(A) MOV 30H,Acc (B) MOV 30H,C (C) MOV 30H,R0 (D) MUL 7. 下列指令中可能改变Cy的有( )

A.DA A B.INC A C.CPL A D.RLC A

8. 在CPU内部,反映程序运行状态或反映运算结果的特征寄存器是( )。

(A)PC (B)PSW (C)A (D)SP

9. AJMP指令的跳转范围是( )。

(A)256 (B)1KB (C)2KB (D)KB

AB

10. 下列指令中正确的是( )。

(A)MOV P2.1,A (B)JBC TF0,L1

(C)MOVX B,@DPTR (D) MOV A,@R3

11. 下列指令中错误的是( )。

(A)SETB 50H.0 (B)MOV A,B

(C)JNC LOOP (D)SUBB A,R0

12. 单片机应用程序一般存放在( )

13. A、RAM B、ROM C、寄存器 D、CPU

14. 8031复位后,PC与SP的值为( )

15. A、0000H,00H B、0000H,07H C、0003H,07H寄存器 D、0800H,00H

16. 单片机的堆栈指针SP始终是( )

17. A、指示堆栈底 B、指示堆栈顶 C、指示堆栈地址 D、指示堆栈长度

18. 下列指令中错误的是( )

19. A、MOV A,R4 B、MOV 20H,R4 C 、MOV R4,R3 D、MO V﹫R4,R3

20. 下列指令中不影响标志位CY的指令有( )

21.22.23.24.S U B B A25.26.27.28.29. A、ADD A,20H B、CLR A C 、RRC A D、INC A

LJMP跳转空间最大可达到( )

A、2KB B、256B C 、128B D、KB

设累加器A的内容为0 C 9 H,寄存器R2的内容为54H,C Y=1,执行指令,

R2 后结果为( )

A、(A)=74H B、(R2)=74H C 、(A)=75H D、(R2)=75H 设(A)=0 C 3 H,(R0)=0 A A H,执行指令A N L A,R0后,结果( ) A、(A)=82H B、(A)=6CH C 、(R0)=82 D、(R0)=6CH

执行如下三条指令后,30H单元的内容是( )

30. M O V R 1,#30H

31. M O V 40H,#0 E H

32. M O V ﹫R 1,40H

33. A、40H B、30H C 、0 E H D34. 有如下程序段:

35. M O V R 0,#30H

36. S E T B C

37. C L R A

38. A D D C A,#0 0H

39. M O V ﹫R 0,A

40. 执行结果是( )

41. A、(30H)=0 0H B、(30H)=0 1H C 00H)=0 1H

42. 从地址2132H开始有一条绝对转移指令A J M P addr11、F F H

、(00H)=0 0H D、,指令可能实现的转

移范围是( )

A、2000H~27FFH B、2132H~2832H C 、2100H~28FFH D、2000H~3FFFH

43. 如下程序段:

C L R C

M O V A,#BCH

A D D C A,#65H

则其结果为( )

A、(A)=21H B、CY=1 C 、AC=1 D、CY=0 E、AC=0

44. 对于JBC bit,rel指令,下列说法正确的是( )

45. A.bit位状态为1时转移 B.bit位状态为0时转移 C.bit位状态为1时不转移 D.bit位状态为0时不转移 E.转移时,同时对该位清零

46. 关于指针DPTR,下列说法正确的是( )

47. (A)DPTR是CPU和外部存储器进行数据传送的唯一桥梁 (B)DPTR是一个16位寄存器 (C)DPTR不可寻址 (D)DPTR是由DPH和DPL两个8位寄存

器组成的 (E) DPTR的地址83H

48. 对程序存储器的读操作,只能使用( )

(A)MOV指令 (B)PUSH指令 (C)MOVX指令(D)MOVC指令

49. LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=((A)2000H (B)2001H (C)2002H (D)2003H

五、编程题

1、请按下列要求完成答题 1)、对每一条指令加上注释;

2)、说明连续运行该程序时,二极管的变化的规律; 3)、如果要使发光二极管依次轮流点亮,如何修改程序。 ORG

0000H

AJMP MAIN

ORG 0100H

MAIN:

MOV SP,#60H

LEDRESET:

MOV MOV CLR IEDUP:

MOV ACALL MOV RR MOV DJNZ AJMP R2,#80H

R1,#08H

P2.7

P1,R2

DELAY

A,R2

A

R2,A

R1,IEDUP

LEDRESET

R1470R2470R3U18051P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7470R4470R5470R70R7470R8470D8LEDD7LEDD6LEDD5LEDPNPD4LEDD3LEDVCCD2LEDD1LEDQ1R92kP2.7

2、将R2中的值(范围0-9)取平方值,结果存放在内部数据存储器40H单元中

3、编程实现把8031片内以80H为首地址的20个单元内容送到以255H为首地址的扩展RAM单元中。

4.已知MCS—51单片机系统fosc=6MHZ,编一段延时约20MS的子程序。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务