单片机课后题.docx

上传人:b****6 文档编号:8218577 上传时间:2023-01-29 格式:DOCX 页数:24 大小:31.87KB
下载 相关 举报
单片机课后题.docx_第1页
第1页 / 共24页
单片机课后题.docx_第2页
第2页 / 共24页
单片机课后题.docx_第3页
第3页 / 共24页
单片机课后题.docx_第4页
第4页 / 共24页
单片机课后题.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

单片机课后题.docx

《单片机课后题.docx》由会员分享,可在线阅读,更多相关《单片机课后题.docx(24页珍藏版)》请在冰豆网上搜索。

单片机课后题.docx

单片机课后题

Forpersonaluseonlyinstudyandresearch;notforcommercialuse

测试题一

一、选择题

1、执行下列3条指令后,30H单元的内容是 ( C ) 

    MOV R0,#30H

   MOV 40H,#0EH

   MOV @R0,40H

   A)40H         B)30H          C)0EH        D)FFH

2、在堆栈中压入一个数据时 ( B)  

    A)先压栈,再令SP+1          B)先令SP+1,再压栈

   C)先压栈,再令SP-l           D)先令SP-1,再压栈

3、在堆栈操作中,当进栈数据全部弹出后,这时的SP应指向 A    

    A)栈底单元                   B)7FH

   C)栈底单元地址加1           D)栈底单元地址减l

4、指令MOVCA,@A+PC源操作数的寻址方式是 D   

    A)寄存器寻址方式             B)寄存器间接寻址方式

   C)直接寻址方式               D)变址寻址方式

5、ANL20H,#30H指令中,源操作数的寻址方式是  A   

   A)立即寻址方式               B)直接寻址方式

   C)位寻址方式                 D)相对寻址方式

6、ANL C,/30H指令中,源操作数的寻址方式是 C  

   A)立即寻址方式               B)直接寻址方式

   C)位寻址方式                 D)相对寻址方式

7、Jz rel指令中,操作数rel的寻址方式是  D   

    A)立即寻址方式               B)直接寻址方式

   C)位寻址方式                 D)相对寻址方式

8、Jz rel指令中,是判断 A    中的内容是否为0。

    A)A            B)B           C)C              D)PC

9、MOVX A,@DPTR指令中源操作数的寻址方式是(B)

    A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址

10、下面条指令将MCS-51的工作寄存器置成3区(B)

    A)MOV PSW,#13H (B)MOV PSW,#18H

11、MOV  C,00H指令中源操作数的寻址方式是(A)

   A)位寻址    B)直接寻址     C)立即寻址     D)寄存器寻址

二、填空题

1、8051单片机共有 7   种寻址方式。

访问外部数据存储器应采用寄存器间接寻址方式。

2、访问外部数据存储器应采用  寄存器间接   寻址方式;查表应使用  变址 寻址方式。

3、在8051单片机中,堆栈操作的指令有  PUSH  和  POP  两个。

4、在8051单片机中,子程序调用的指令有 ACALL     和 LCALL   两个。

5、CJNE指令都是  3字节    字节指令。

6、指令SJMP $ 的功能是无条件转移到本指令的首地址执行程序,即将本指令的首地址送给PC  。

7、十进制调整指令DA A不能单独执行,在执行该指令之前必须先执行  ADD   指令或者 ADDC  指令。

8、位转移指令都是采用  相对    寻址方式实现转移的。

9、子程序必须使用 RET 指令返回主程序,而中断服务程序必须使用 RETI  指令返回主程序。

10、PUSH指令是实现把数据压入堆栈的操作,而POP指令是实现把数据从堆栈中弹出的操作。

11、执行了DIV AB指令后,则商存放在 A 中,余数存放 B   中。

12、执行了MUL AB指令后,则积的高8位存放在  B 中,而积的低8位存放在  A    。

13、在MCS-51单片机中,加法指令可以分为 ADD  和 ADDC   两种。

14、读程序存储器指令有 MOVCA,@A+DPTR 和 MOVCA,@A+PC 两个,它们的源操作数都属于  变址   寻址方式。

15、减法指令的助记符为 SUBB   ,其作用是将累加器A中的内容减去源操作数,再减去进位位C的内容,所得的结果存入累加器A。

 

16、INC指令的功能是  将操作数加l后存放到原处   ,DEC指令的功能是  将操作数减1后存放到原处     。

17、在立即寻址方式中,在数前使用  #   号来表示立即数。

18、在立即寻址方式中,立即数一定出现在   源  操作数中。

19、在执行MOVX A,@R0指令时,源操作数的高8位是由  P2   寄存器提供的。

20、访问外部数据存储器必须使用  MOVX   指令。

三、判断题

1、在堆栈操作中,当栈内的数据全部弹出后,这时的SP指向栈底单元。

(√  )

2、在堆栈操作中,当栈内的数据全部弹出后,这时的SP指向栈顶单元。

(  ×)

3、数据传送指令将改变源操作数的内容。

(× )

4、调用子程序指令(如:

CALL)及返回指令(如:

RET)与堆栈有关但与PC无关。

(×)

5、堆栈遵循数据先进后出,后进先出的原则。

(√  )

6、在MCS-51单片机中,堆栈的地址随着压栈数据从小到大递增。

(√   )

7、子程序返回可以使用RET指令,也可以使用RETI指令。

(× )

8、ACALL指令是2字节指令,而LCALL指令是3字节指令。

(√   )

9、空操作指令不占机器周期。

(× )

10、减法指令只有带借位的减法,没有不带借位的减法。

(√  )

11、加法指令只有带进位的加法,没有不带进位的加法。

(× )

12、不能使用无条件转移指令直接从子程序中转到主程序中去。

(√ )

四、应用题

1、说明下列指令中各个操作数的寻址方式。

(1)ADD   A,30H

(2)MOV   30H,20H

(3)MOV   A,@R0

(4)MOVX   A,@R1

(5)SJMP   $

(6)MOV   R0,#20H

(7)ORL   C,00H

(8)MOV   DPTR,#2000H

(9)MOVC   A,@A+PC

(10)ANL   20H,#30H

(11)ANL   C,/30H

(12)CPL   C

(13)CPL   A

(14)CPL   20H

(15)ADD   A,@R1

(16)MOVC A,@A+DPTR

(17)DJNZ  R0,rel

(18)SETB  00H

解答:

(1)解答:

源操作数为:

直接寻址方式:

目的操作数为:

寄存器寻址方式。

(2)解答:

源操作数为:

直接寻址方式;目的操作数为:

直接寻址方式。

(3)解答:

源操作数为:

寄存器间接寻址方式;目的操作数为:

寄存器方式。

(4)解答:

源操作数为:

寄存器间接寻址方式;目的操作数为:

寄存器寻址方式。

(5)解答:

操作数为:

相对寻址方式。

(6)解答:

源操作数为:

立即寻址方式;目的操作数为:

寄存器寻址方式。

(7)解答:

源操作数为:

位寻址方式;目的操作数为:

位寻址方式。

(8)解答:

源操作数为:

立即寻址方式;目的操作数为:

寄存器寻址方式。

(9)解答:

源操作数为:

变址寻址方式;目的操作数为:

寄存器寻址方式。

(10)解答:

源操作数为:

立即寻址方式:

目的操作数为:

直接寻址方式。

(11)解答:

源操作数为:

位寻址方式;目的操作数为:

位寻址方式。

(12)解答:

操作数为:

位寻址方式。

(13)解答:

操作数为:

寄存器寻址方式。

(14)解答:

操作数为:

位寻址方式。

(15)解答:

源操作数为:

寄存器间接寻址方式:

目的操作数为:

寄存器寻址方式。

(16)解答:

源操作数为:

变址寻址方式;目的操作数为:

寄存器寻址方式。

(17)解答:

源操作数为:

相对寻址方式;目的操作数为:

寄存器寻址方式。

(18)解答:

操作数为:

位寻址方式。

2、写出下列程序的运行结果。

(1)MOV SP,#40H

MOV A,#20H

MOV B,#30H

PUSH A

PUSH B

POP  A

POP  B

(SP)=?

  (A)=?

 (B)=?

解答:

(SP)=40H,(A)=30H,(B)=20H

 

(2)MOV  SP,#40H

MOV   A,#20H

MOV   B,#30H

PUSH  A

PUSH  B

POP    B

POP    A

 (SP)=?

    (A)=?

  (B)=?

解答:

(SP)=40H , (A)=20H,(B)=30H

(3)MOV  R0,#7EH

MOV  DPTR.#10FEH

MOV  7EH,#0AAH

MOV  7FH.#0BBH

INC   @R0

INC   R0

INC   @R0

INC   DPTR

(7EH)=?

 (7FH)=?

  (R0)=?

 ((R0))=?

 (DPTR)=?

解答:

(7EH)=0ABH , (7FH)=0BCH,(R0)=7FH , ((R0))=0BCH, (DPTR)=10FFH

 (4)MOV  R0,#00H

MOV  A,#20H

MOV  B,#0FFH

MOV  20H,#0F0H

XCH  A,R0

XCH  A, B

XCH   A, @R0

 (A)=?

 (B)=?

 (20H)=?

 (R0)=?

解答:

(A)=F0H  (B)=00H (20H)=FFH (R0)=20H

3、在设A=0FH,R0=30H,内部RAM的(30H)=0AH、(31H)=0BH、(32H)=0CH,请指出在执行下列程序段后上述各单元内容的变化。

  MOV    A,@R0

   MOV    @R0,32H

    MOV    32H,A

   MOV    R0,#31H

MOV    A,@R0

解答:

R0=31H,A=0BH, (30H)=0CH、(31H)=0BH、(32H)=0AH

4、请用数据传送指令来实现下列要求的数据传送。

(1)      R0的内容输出到R1

解答:

MOV A,R0

MOV R1,A

(2)       内部RAM20H单元的内容传送到A中。

解答:

MOV A,20H

(3)       外部RAM30H单元的内容送到R0。

解答:

MOV R0,#30H

MOVX A,@R0

MOV R0,A

(4)       外部RAM30H单元的内容送内部RAM20H单元。

解答:

MOV R1,#30H

MOVX A,@R1

MOV 20H,A

(5)       外部RAM1000H单元的内容送内部RAM20H单元。

解答:

MOV DPTR,#1000H

MOVX A,@DPTR

MOV 20H,A

(6)       程序存储器ROM2000H单元的内容送R1。

解答:

MOV DPTR,#2000H

CLR A

MOVC A,@A+DPTR

MOV R1,A

(7)      ROM2000H单元的内容送到内部RAM20H单元。

解答:

MOV DPTR,#2000H

CLR A

MOVC A,@A+DPTR

MOV 20H,A

(8)      ROM2000H单元的内容送外部RAM30H单元。

解答:

MOV DPTR,#2000H

CLR A

MOVC A,@A+DPTR

MOV R0,#30H

MOVX @R0,A

(9)      ROM2000H单元的内容送外部RAM1000H单元。

解答:

MOV DPTR,#2000H

CLR A

MOVC A,@A+DPTR

MOV DPTR,#1000H

MOVX @DPTR,A

5、设A=5AH,R1=30H,(30H)=E0H,Cy=1。

分析下列各指令执行后A的内容以及对标志位的影响(每条指令都以题中规定的原始数据参加操作)。

(1)XCH   A,R1            ;A=30H

(2)XCH   A,30H           ;A=E0H

(3)XCH   A,@R1          ;A=E0H

(4)XCHD  A,@R1         ;A=50H

(5)SWAP  A                ;A=A5H

(6)ADD   A,R1            ;A=8AH

(7)ADD   A,30H           ;A=30H

(8)ADD   A,#30H          ;A=8AH

(9)ADDC  A,30H           ;A=31H

(10)INC   A                 ;A=5BH

(11)SUBB  A,30H           ;A=79H

(12)SUBB  A,#30H         ;A=29H

(13)DEC   A              ;A=59H

(14)RL     A              ;A=B2H

(15)RLC    A             ;A=B5H

(16)CPL    A              ;A=A5H

(17)CLR    A             ;A=00H

(18)ANL    A,30H        ;A=40H

(19)ORL    A,@R1        ;A=FAH

(20)CRL    A,#30H        ;A=BAH

五、问答题

1、在MCS-51单片机中有几种寻址方式?

写出每一种寻址方式。

解答:

有7种寻址方式,分别是立即寻址方式、直接寻址方式、寄存器寻址方式、寄存器间接寻址方式、变址寻址方式、相对寻址方式和位寻址方式。

2.什么是堆栈?

解答:

堆栈是一个特殊的存储空间,有一端是固定的,称为栈底,另一端是活动的,称为栈项,数据的存取是在栈顶进行的。

数据的存取遵循先进后出,后进先出的原则。

3.在MCS-51单片机的指令系统中,有关堆栈操作的指令有哪些?

解答:

PUSH和POP指令。

4.已知CJNE指令的一般格式为:

   CJNE  操作数l,操作数2.rel

简述怎样使用CJNE指令判断两个操作数的大小。

解答:

若操作数1≥操作数2,则进位标志C=0,否则C=1

5.写出AJMP和LJMP指令的共同点和区别。

解答:

共同点是都是无条件转移,转到指定的标号执行程序。

区别:

(1)转移范围不同,LJMP指令的转移范围为64KB,AJMP指令的转移范围为2KB。

(2)指令字节数不同,LJMP指令是3字节指令,AJMP指令是2字节指令。

(3)AJMP指令的机器码特殊。

6.写出ACALL和LCALL指令的共同点和区别。

解答:

共同点是都是调用子程序指令,转到指定的标号执行子程序。

区别:

(1)转移范围不同,LCALL指令的调用范围为64KB,ACALL指令的调用范围为2KB。

(2)指令字节数不同,LCALL指令是3字节指令,ACALL指令是2字节指令。

(3)ACALL指令的机器码特殊。

7.RET和RETI指令主要有哪些区别?

解答:

区别:

(1)使用场合不同,RET指令在子程序中使用,RETI指令在中断服务程序中使用。

(2)从功能上看,RET指令从堆栈中自动取出断点地址给PC,使之返回到调用指令的下一个指令,继续执行主程序。

而RETI指令除了具有RET指令的功能之外,还有清除中断响应时被设置的优先级状态、开放低级中断以及恢复中断逻辑等功能。

8.NOP指令的用途是什么?

解答:

常常用于程序的等待或时间的延迟。

 

测试题二

练习1:

将内部RAM单元中20H单元到2FH单元的数传到外部RAM中的2000H到200FH单元中. ORG   0000H          MOV  R0,#20H          MOV  DPTR,#2000H          MOV   R2,#10H    LOOP:

  MOV   A,@R0          MOVX  @DPTR,A          INC  R0          INC  DPTR          DJNZ  R2,LOOP                END

练习2:

外部RAM3000H开始有50个数传送到内部RAM30H开始的区域;算法分析:

取地址指针DPTR=3000H、R0=30H、计数器R7=50         ORG 0000H        MOV DPTR,#3000H        MOV R0,#30H         MOV R7,#32H LOOP:

   MOVXA,@DPTR         MOV @R0,A         INC DPTR         INC R0         DJNZR7,LOOP;   END

练习3:

设在外ROM的TAB处开始有一串数字,该串数字以0结尾,编程把他们从P1口输出。

 ORG 0000H  MOV   DPTR,#TAB ;设字符串首地址指针          MOV   A,#00H

SOUT:

  MOV  B,A       MOVC  A,@A+DPTR   ;取字符  JZ   NEXT  ;整串结束则转跳  MOV   P1,A MOV   A,B INC   A  ;修改地址指针  SJMP  SOUT  ;没结束继续取数发送 NEXT:

  SJMP  $               ;结束处理

TAB:

 DB    04H,05H    ;定义数字串  DB    03,07H,0FH,00H ;以0结尾       END 练习4:

2ms延时程序,已知晶振频率为12MHZ,则机器周期为1us。

   ORG0DELAY2ms:

MOV R7,#10 ;1T DL1:

     MOV R6,#48 ;1T DL2:

     NOP        ;1T   NOP        ;1T   DJNZ R6,DL2 ;2T   DJNZ R7,DL1 ;2T   END;该段程序耗时为:

1+[1+(1+1+2)×48+2]×10+2=1953 (us)  练习5:

编程通过P1.0线连续输出256个宽度为5个机器周期长的方波。

 ORG 0 MOV R0,#00H  CLR P1.0 LOOP:

  CPL P1.0   NOP   NOP   DJNZ R0,LOOP  END练习6:

将8051内部RAM的40H~4FH单元置初值#A0H~#AFH。

 ORG0 MOV R0,#40H        MOV R2,#10H        MOV A,#0A0H LOOP:

 MOV @R0,A   INC R0   INC A   DJNZ R2,LOOP  END

练习7:

设P1口的P1.0~P1.3为准备就绪信号输入端,当该四位为全1时,说明各项工作已准备好,单片机可顺序执行(将R2里的数送给A),否则,循环等待。

 ORG 0WAIT:

 MOV P1,#0FFH  MOV A,P1   ANL A,#0FH   CJNEA,#0FH,WAIT;P1.0~P1.3不为全1时,返回WAIT   MOV A,R2  END

测试题三

一、单项选择题

1、CPU主要的组成部部分为:

                                       [    A     ]

(A)运算器.控制器           (B)加法器.寄存器

(C)运算器.寄存器            (D)运算器.指令译码器

2 .MCS—51 系列单片机外扩存储器芯片时, 4 个 I/O 口中作为数据总线的是[B]。

(A) P0 口和 P2 口   (B) P0 口    (C) P2 口和 P3 口   (D) P2 口 

3、单片机应用程序一般存放在:

                        [    B   ]

(A)RAM    (B)ROM    (C)寄存器 

4.下列指令中,不影响堆栈指针的指令是               [     B       ]。

A RET                          B JBbit,rel

C LCALLaddr16                 D RETI

5、在程序状态寄存器PSW中,判断是否有借/进位的标志位是 [      A     ]若选择寄存器工作组时标识位应是  [      C      ]

(A)CY   (B)AC   (C)RS1和RS0    (D)OV     (E)P

6、以下指令中,哪条指令执行后使标志位CY清0 :

                       [   D          ]

(A)MOVA,#00H                (B)CLR  A

(C)ADDA,#00H                      (D)ADDC  A,#00H

7.在 CPU 内部,反映程序运行状态或反映运算结果一些特征的寄存器是   [  B     ]。

 

A.PC         B.PSW       C.A            D.SP

8、下面那一段程序能准确地读取P1口引脚信号:

                                 [    B         ]

(A)MOV  A,#00H ;MOV  P1,A ;MOV  A,P1

(B)MOV  A,#0FFH ;MOV  P1,A ;MOV  A,P1

(C)MOV  A,#00H ;MOV  A,P1

(D)MOV  A,#0FFH ;MOV  A,P1

9、8031单片机中既可位寻址又可字节寻址的单元是                           [     A    ]

(A)20H     (B)30H      (C)00H     (D)70H

10、定时/计数器有4种操作模式,它们由下列哪个寄存器中的M1和M0状态决定。

[B   ]

(A)TCON     (B)TMOD     (C)PCON     (D)SCON    

11、定时器/计数器工作于模式2 ,在计数溢出时,计数器工作于下列哪个状态。

[   B   ]

(A)计数从零重新开始           (B)计数从初值重新开始 

(C)计数停止                         (D)计数从0FFH重新开始

12、T0 设置成计数方式时,外部引脚计数脉冲的最高频率应是晶振频率的:

[  C       ] 

(A)1/6       (B)1/12     (C)1/24     (D)1/48

13、当晶振频率是12MHz时,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1