单片机习题集(含答案)经典

22、8051在什么条件下可响应中断?

23、MCS-51系列单片机的引脚中有多少根I/O线?它们与单片机对外的地址总线和数据总线之间有什么关系?其地址总线和数据总线各有多少位?对外可寻址的地址空间有多大? 24、什么是中断?51单片机有哪几个中断源?各自对应的中断入口地址是什么?中断入口地址与中断服务子程序入口地址有区别吗?

第三章 MCS-51单片机的指令系统与程序设计

3-1选择题

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

(A)寄存器寻址 (B)寄存器间接寻址 (C)直接寻址 (D)立即寻址 2、 ORG 0003H LJMP 2000H ORG 000BH

LJMP 3000H 当CPU响应外部中断0后,PC的值是( )

(A)0003H (B)2000H (C)000BH (D)3000H

3、LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=( )

(A)2000H (B)2001H (C)2002H (D)2003H

4、51执行完MOV A,#08H后,PSW的一位被置位( )

(A)C (B)F0 (C)OV (D)P

5、下面条指令将MCS-51的工作寄存器置成3区( ) (A)MOV PSW,#13H (B)MOV PSW,#18H

(C)SETB PSW.4 CLR PSW.3 (D) SETB PSW.3 CLR PSW.4 6、执行MOVX A,DPTR指令时,MCS-51产生的控制信号是( )

(A)/PSEN (B)ALE (C)/RD (D)/WR 7、MOV C,#00H的寻址方式是( )

(A)位寻址 (B)直接寻址 (C)立即寻址 (D)寄存器寻址 8、ORG 0000H

AJMP 0040H ORG 0040H MOV SP,#00H

当执行完左边的程序后,PC的值是( ) (A)0040H (B)0041H (C)0042H (D)0043H 9、对程序存储器的读操作,只能使用( )

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

10、MCS-51单片机可分为两个优先级别。各中断源的优先级别设定是利用寄存器( )

(A)IE (B)IP (C)TCON (D)SCON

11、在寄存器间接寻址方式中,指定寄存器中存放的是( ) (A)操作数 (B)操作数地址 (C)转移地址 (D)地址偏移量 12、在MCS—51中,需双向传递信号的是( ) (A)地址线 (B)数据线 (C)控制线 (D)电源线 13、下列指令中于进位标志位CY无关的指令有( )

(A)移位指令 (B)位操作指令 (C)十进制调整指令 (D)条件转移指令 14、在程序储存器的读操作,只能使用( )

(A)MOV指令 (B) PUSH指令 (C)MOVX指令 (D)MOVC指令 15、以下运算中对溢出标志OV没有影响或不受OV影响的运算是( ) (A)逻辑运算 (B)符号数加减法运算 (C)乘法运算 (D)除法运算 16、以下指令中,属于单纯读引脚的指令是 ( )

(A)MOV P1,A (B)ORL P1,#0FH (C)MOV C,P1.5 (D)DJNZ P1,SHORT-LABLE 3-2 判断题

1、MCS-51的相对转移指令最大负跳距是127B。( ) 2、当MCS-51上电复位时,堆栈指针SP=00H。( )

3、调用子程序指令(如:CALL)及返回指令(如:RET)与堆栈有关但与PC无关。( ) 4、MOV @R1,#80H。 ( ) 5、INC DPTR ( ) 6、DEC DPTR ( ) 7、CLR R0 ( ) 8、ANL R1,#0FH ( ) 9、ADDC A,C ( ) 10、XOR P1,#31H ( ) 11、MOV 28H,@R2 ( ) 12、CLR

R0 ( )

13、CPL R5 ( ) 14、MOV R0,R1 ( ) 15、PUSH 16、PUSH 17、RLC

DPTR ( ) R1 ( ) R0 ( )

18、DJNZ @R1,32H ( )

19、寄存器DPTR可拆开成两个独立的寄存器DPH与DPTL使用。( )

3-3 填空题

1、JBC bit,rel指令是指对位bit进行判转,并 。

2、指令POP B的源操作数是 ,是 寻址方式,目的操作数是 ,是 寻址方式。

3、已知SP=25H,PC=4345H,(24H)=12H,(25H)=34H,(26H)=56H,当执行RET指令后,SP= ,PC= 。

4、指令是由 和 构成。 5、MCS-51单片机

有 、 、 、 、 、 、 七种寻址方式。

6、MOVC A,@A+DPTR第二操作数采用是 寻址方式

7、JBC bit rel 指令是对位bit进行判断,若bit=1则转移,并对该位 。 8、执行ANL P1,# H后,可对P1口的高四位清零。 9、若执行XRL P1,# B后,可对P1口的高两位取反。 10、堆栈必须遵循“ ”的原则。

3-4 问答题与编程题

1、8051单片机指令系统按功能可分为几类?

2、什么叫寻址方式?具有几种寻址方式?它们的寻址范围如何? 3、堆栈的功能是什么?有什么操作原则?栈顶地址如何指示? 4、什么是汇编?什么是汇编语言?它有什么特点? 5、什么叫指令周期?

6、什么是指令?什么是程序?简述程序在计算机中的执行过程。 7、什么是进位和溢出?

8、“DA A”指令的作用是什么?怎样使用?

9、片内RAM 20H~2FH单元中的128个位地址与直接地址00H~7FH形式完全相同,如何在指令中区分出位寻址操作和直接寻址操作?

10、8051单片机指令系统中有长跳转LJMP,长调用LCALL指令,为何还没有设置了绝对跳转AJMP,绝对调用ACALL指令?在实际使用是应怎样考虑? 11、SJMP,AJMP和LJMP指令在功能上有何不同? 12、MOVC A,@DPTR与MOVX A,@DPTR指令有何不同?

13、在“MOVC A,@A+DPTR”和“MOVC A,@A+PC”中,分别使用了DPTR和PC作基址,请问这两个基址代表什么地址?使用中有何不同?

14、设片内RAM中的(40H)=50H,写出执行下列程序段后寄存器A和R0,以及片内RAM中50H和51H单元的内容为何值?

15、堆栈指针(SP)=60H,片内RAM中的(30H)=24H,(31H)=10H。执行下列程序段后,61H,62H,30H,31H,DPTR及SP中的内容将有何变化?

16、在8051的片内RAM中,已知(20H)=30H,(30H)=40H,(40H)=50H,(50H)=55H。分析下面各条指令,说明源操作数的寻址方式,分析按顺序执行各条指令后的结果。 MOV A,40H MOV R0,A MOV P1,#0F0H MOV @R0,20H MOV 50H,R0 MOV A,@R0 MOV P2,P1

17、完成以下的数据传送过程。 (1)R1的内容传送到R0。

(2)片外RAM 20H单元的内容送R0。 (3)片外RAM 20H单元的内容送片内RAM 20H (4)片外RAM 1000H单元的内容送片内RAM 20H (5)片外RAM 20H单元的内容送R0。

(6)片外RAM 2000H单元的内容送片内RAM 20H (7)片外RAM 20H单元的内容送片外RAM 20H

18、设有两个4位BCD码,分别存放在片内RAM的23H,22H单元和33H,32H单元中,求它们的和,并送入43H,42H单元中去。(以上均为低位字节,高位在高字节)。 19、编程将片内RAM的40H~60H单元中内容送到片外RAM以3000H开始的单元中。 20、已知内部RAM的BLOCK单元开始有一无符号数据块,块长在LEN单元。请编出求数据块中各数累加和并存入SUM单元的程序。

20、编程计算片内RAM区30H~37H的8个单元中数的算术平均值,结果存在3AH单元中。 21、把内部RAM中起始地址为DATA的数据串传送到外部RAM以BUFFER为首地址的区域,直到发现“$“字符的ASCⅡ码为止。同时规定数据串的最大长度为32个字节。

22、设内部RAM的20H和21H单元中有两个带符号数,将其中的大数存放在于22H单元中,编出程序。

23、设有100个有符号数,连续存放在片外RAM以2200H为首地址的存储区中,试片成统计其中正数、负数、零的个数。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4