单片机复习题.docx

上传人:b****5 文档编号:3731789 上传时间:2022-11-25 格式:DOCX 页数:18 大小:27.31KB
下载 相关 举报
单片机复习题.docx_第1页
第1页 / 共18页
单片机复习题.docx_第2页
第2页 / 共18页
单片机复习题.docx_第3页
第3页 / 共18页
单片机复习题.docx_第4页
第4页 / 共18页
单片机复习题.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

单片机复习题.docx

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

单片机复习题.docx

单片机复习题

第一章

一、填空题:

1、机器数的表示规定,   表示符号,正号用  表示,负号用  表示。

2、单片机是将     、    、    等几部分集成在一块芯片上的微型计算机。

3、十进制数29的二进制表示为。

4、十进制数-29的8位补码表示为。

5、微处理器由控制器和二部分组成。

6、十进制数-47用8位二进制补码表示为。

7、-19的二进制补码表示为。

8、计算机中最常用的字符信息编码是。

9、89C51含KB的ROM。

1、单片机机器内的数是以(  )的形式表示的

A、原码  B、反码  C、补码   D、ASCII码

2、二进制数110110110对应的十六进制数可表示为。

A.1D3HB.1B6HC.DB0HD.666H

3、ALU表示.

A.累加器B.程序状态字寄存器C.计数器D.算术逻辑部件

第二章

一、填空题:

1、89C51单片机的并行I/O口共有4个,分别是    、    、   和   。

2、若不使用89C51片内存储器引脚/EA必须接。

3、89C51系统中,当/PSEN信号有效时,表示CPU要从存储器读取信息。

1、当ALE信号有效时,表示()。

(A)从ROM中读取数据(B)从P0口可靠地送出地址低8位

(C)从P0口送出数据(D)从RAM中读取数据

2、在89C51单片机应用系统中,可以作为时钟输出的是()引脚。

(A)RXD(B)RST(C)ALE(D)XTAL2

3、在89C51的4个并行口中,能作为通用I/O口和高8位地址总线的是()。

(A)P0(B)P1(C)P2(D)P3

4、单片机89C51的ALE引脚是()。

A、输出高电平B、输出低电平C、输出矩形脉冲,频率为fosc的1/6

D、输出矩形脉冲,频率为fosc的1/2

5、在单片机中,通常将一些中间计算结果放在()中。

A、累加器B、控制器C、程序存储器D、数据存储器

1、程序计数器PC由PCH和PCL组成。

(  )

2、程序计数器PC总是指向正在执行的指令地址。

(  )

1、89C51的堆栈是软件填写堆栈指针临时在数据存储器内开辟的区域。

2、89C51中凡字节地址能被整除的特殊功能寄存器均能位寻址。

3、当使用89C51且EA=1,程序存储器地址小于时,访问的是片内ROM。

4、89C51有4组工作寄存器,它们的地址范围是。

5、89C51片内20H~2FH范围内的数据存储器,既可以字节寻址又可以寻址。

6、若用传送指令访问89C51的程序存储器,它的操作码助记符应为。

7、访问89C51片内RAM应该使用的传送指令的助记符是。

8、MOVPSW,#10H是将89C51的工作寄存器置为第组。

9、PSW中RS1RS0=10H时,R2的地址为。

10、PSW单片机片内RAM的寄存器区共有个单元,分为组寄存器,每组个单元,以作为寄存器名称。

11、89C51可扩展片外RAM64KB,但当外扩I/O口后,其外部RAM寻址空间将。

12、89C51在物理上有个独立的存储器空间。

13、89C51单片机的堆栈区只可设置在_____________存储区,数据遵循_____________的原则。

PSW中的RS1和RS0用来()。

A.选择工作寄存器区号B。

指示复位C。

选择定时器D。

选择工作方式

09H位所在的单元地址是()。

A.02HB.21HC.08HD.20H

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

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

2、89C51的内部RAM中,可以进行位寻址的地址空间为()。

A.00H∽2FH   B.20H∽2FH   C.00H∽FFH   D.20H∽FFH

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

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

进位标志CY在()中。

A.累加器AB.算术逻辑运算部件ALUC.程序状态字寄存器PSWD.DPDR

3、要用传送指令访问89C51片外RAM,它的指令操作码助记符应是()。

A.MOVB.MOVXC.MOVCD.以上都行

4、下面哪条指令将89C51的工作寄存器置成3区()。

A.MOVPSW,#13HB.MOVPSW#18H

C.SETBPSW.4CLRPSW.3D.SETBPSW.3CLRPSW.4

5、89C51单片机有(  )个特殊功能寄存器。

A、3  B、10   C、21    D、128

6、数据寄存器指针DPTR是一个(  )位的寄存器。

A、8   B、16   C、24   D、32

7、89C51单片机的工作寄存器分成(  )组,每组有(  )单元。

A、2个    B、4个    C、6个   D、8个

12、89C51单片机的数据指针DPTR是一个16位的专用地址指针寄存器,主要用来()。

A.存放指令B.存放上一条指令地址

C.存放下一条指令地址D.存放16位地址,作间址寄存器使用

13、单片机89C51的XTAL1和XTAL2引脚是()引脚。

A、外接定时器B、外接串行口C、外接中断D、外接晶振

1、堆栈操作是按“后进先出”的原则存取数据。

(  )

2、数据寄存器指针DPTR由DPH和DPL组成。

(  )

3、若累加器A中“1”的个数为偶数,则奇偶标志位P为1。

(  )

MCS51的特殊功能寄存器分布在60H~80H地址范围内。

()

 

1、单片机复位方式有    和     复位。

2、单片机复位后,若执行SETBRS1指令,此时只能使用区的工作寄存器。

单片机复位后,SBUF的内容为,SP的内容为,单片机从开始执行程序。

3、P0,P1口作输入用途之前必须。

4、89C51的P0口作为输出端口时,每位能驱动个SL型TTL负载。

5、89C51有4个并行I/O口,其中是准双向口,所以由输出转输入时必须先写入“1”。

6、一个机器周期=节拍、一个机器周期=12个振荡周期,一个振荡周期=节拍。

1、89C51单片机上电复位后,堆栈区的最大允许范围是()个单元。

A.64B.120C.128D.256

89C51系列单片机的复位系统必须保持()才能复位。

A、1个机器周期以上的高电平B、1个机器周期以上的低电平

C、2个机器周期以上的高电平D、2个机器周期以上的低电平

一个机器周期是()。

A、一条指令所执行的时间B、一段程序需要的时间

C、振荡脉冲周期的12倍D、振荡脉冲周期的24倍

单片机复位后,()。

A、PC=0003H,SP=07HB、PC=0000H,SP=07H

C、PC=0000H,SP=00HD、PC=0003H,SP=00H

2、单片机上电后或复位后,工作寄存器R0是在()。

A、0区00H单元B、0区01H单元C、1区09H单元D、SFR

3、P1口的每一位能驱动()。

A、2个TTL低电平负载B、4个TTL低电平负载C、8个TTL低电平负载D、10个TTL低电平负载

MCS51上电复位时,SBUF=00H。

()

在MCS51系统中,一个机器周期等于1.5μs。

()

第三章

一、填空题:

1.在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的。

2.在变址寻址方式中,以作变址寄存器,以或作基址寄存器。

3.MOVC,20H源寻址方式为寻址。

4.设DPTR=2000H,(A)=80H,则MOVCA,@A+DPTR的操作数的实际地址为。

5.MOVXA,@DPTR源操作数寻址方式为。

MOVC,#00H的寻址方式是()

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

1.在寄存器间接寻址方式中,指定寄存器中存放的是()

(A)操作数(B)操作数地址(C)转移地址(D)地址偏移量

2.JNZrel指令的寻址方式是()

(A)立即寻址(B)寄存器寻址(C)相对寻址(D)位寻址

3.MOVXA,@DPTR指令中源操作数的寻址方式是()

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

1.特殊功能寄存器只能采用寻址方式。

2.89C51单片机指令ANLA,20H中源操作数的寻址方式是_____________。

3.89C51单片机指令系统按操作功能可分为   、   、    、     、    五大类。

4.89C51单片机堆栈中数据的压入和弹出是按     的规律。

5.堆栈指令包括     指令和     指令两类。

6.累加器(A)=80H,执行完指令ADDA,#83H后,进位位C=。

7.执行ANLA,#0FH指令后,累加器A的高4位=。

8.ORLA,#0FH的意思是将A里面的内容的高4位,低4位。

9.JZrel的操作码地址为1000H,rel=20H,它的转移目的地址为。

JBC00H,rel操作码的地址为2000H,rel=70H,它的转移目的地址为。

累加器(A)=7EH,(20H)=#04H,89C51执行完ADDA,20H指令后,PSW.0=。

10.指令DJNZR7,rel操作码所在地址为3000H,rel=EFH,则它的转移目的地址为。

11.ORLA,#0F0H是将A的高4位置1,而低4位。

12.SJMPrel的指令操作码地址为0050H,rel=65H,那么它的转移目的地址为。

13.指令LCALL37B0H,首地址在2000H,所完成的操作是入栈,37B0H→PC。

ORG1000H

LCALL4000H

ORG4000H

ADDA,R2

执行完LCALL后(PC)=。

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

1000H:

MOVC A,@A+PC

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

假定DPTR的内容为8100H,累加器A的内容为40H,执行下列指令:

MOVC A,@A+DPTR

后,送入A的是程序存储器单元的内容。

假定(SP)=60H,(ACC)=30H,(B)=70H,执行下列指令:

PUSH ACC

PUSH B

后,SP的内容为,61H单元的内容为,62H单元的内容为。

假定(SP)=62H,(61H)=30H,(62H)=70H。

执行下列指令:

POP DPH

POP DPL

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

假定(A)=85H,(R0)=20H,(20H)=0AFH。

执行指令:

ADD A,@R0

后,累加器A的内容为,CY的内容为,AC的内容为,OV的内容为。

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

ADDC A,20H

后,累加器A的内容为,CY的内容为,AC的内容为,OV的内容为。

假定(A)=0FFH,(R3)=0FH,(30H)=0F0H,(R0)=40H,(40H)=00H。

执行指令:

INC A

INC R3

INC 30H

INC @R0

后,累加器A的内容为,R3的内容为,30H的内容为,40H的内容为。

假定(A)=56,(R5)=67。

执行指令:

ADD A,R5

DA

后,累加器A的内容为,CY的内容为。

假定(A)=0FH,(R7)=19H,(30H)=00H,(R1)=40H,(40H)=0FFH。

执行指令:

DEC A

DEC R7

DEC 30H

DEC @R1

后,累加器A的内容为,R7的内容为,30H的内容为,40H的内容为。

假定(A)=50H,(B)=0A0H。

执行指令:

MUL AB

后,寄存器B的内容为,累加器A的内容为,CY的内容为,OV的内容为。

假定(A)=0FBH,(B)=12H。

执行指令:

DIV AB

后,累加器A的内容为,寄存器B的内容为,CY的内容为,OV的内容为。

假定(A)=0C5H。

执行指令:

SWAP A

后,累加器A的内容为。

假定addr11=00100000000B,标号qaz的地址为1030H。

执行指令:

qaz:

AJMP addr11

后,程序转移到地址去执行。

假定标号qaz的地址为0100H,标号qwe值为0123H(即跳转的目标地0123H)。

应执行指令:

qaz:

SJMP qwe

该指令的相对偏移量(即指令的第二字节)为。

DPTR是MCS51中惟一一个16位寄存器,在程序中常用来作为MOVC指访问程序存储器的使用。

请填好下段程序内有关每条指令执行结果的注释中之空白。

MOV A,PSW;(A)=10H

MOV B,A;(B)=H

MOV PSW,A;(PSW)=H

执行下列程序段后CY=,OV=,A=。

MOV A,#56H

ADDA,#74H

ADDA,A

设SP=60H,片内RAM的(30H)=24H,(31H)=10H,在下列程序段注释中

行结果。

PUSH30H;SP=,(SP)=

PUSH31H;SP=,(SP)=

POPDPL;SP=,DPL=

POPDPH;SP=,DPH=

MOVA,#00H

MOVX@DPTR,A

最后执行结果是。

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

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

2.SJMP rel指令中rel的取值范围为(  )。

A、+127~-127   B、0~+127 C、0~-128     D、+127~-128

!

执行返回指令时,返回的断点是()。

(A)调用指令的首地址(B)调用指令的末地址

(C)调用指令下一条指令的首地址(D)返回指令的末地址

3.ORG2000H

LCALL3000H

ORG3000H

RET左边程序执行完RET指令后,PC=()。

(A)2000H(B)3000H(C)2003H(D)3003H

4.执行PUSH ACC指令,89C51完成的操作是()。

(A)SP+1→SP (ACC)→(SP)(B)(ACC)→(SP)SP-1→SP

(C)SP-1→SP (ACC)→(SP)(D)(ACC)→(SP)SP+1→SP

5.关于89C51的堆栈操作,正确的说法是()。

(A)先入栈,再修改栈指针(B)先修改栈指针,再出栈(C)先修改栈指针,再入栈(D)以上都不对

6.执行LCALL4000H指令时,89C51所完成的操作是()。

(A)保护PC(B)4000H→PC(C)保护现场(D)PC+3入栈,4000H→PC

7.若A=78H,执行指令SWAP  A后,A的值为(  )。

A、78H   B、78D   C、87H   D、87D

8.带进位加法指令助记符为(  )。

A、ADD   B、ADDC   C、SBC   D、SUBB

9.相当于累加器A内容乘以2的指令是(  )。

A、RL   B、RR   C、RLC   D、RRC

10.指令和程序是以()形式存放在程序存储器中。

  A.  源程序  B.汇编程序 C.二进制编码 D.BCD码 

!

设(A)=0C3H,(R0)=0AAH,执行指令ANLA,R0后,结果().

 A.(A)=82H   B.(A)=6CH  

 C.(R0)=82  D.(R0)=6CH

1.指令中操作码助记符项可有可无。

(  )

2.累加器A与外部ROM的数据传送采用MOVXA,@A+DPTR。

()

3.作算术运算时,若有进位则一定有溢出。

(  )

4.指令MOVA,#2000H执行完,A中的内容为00H。

()

5.MOVA,65H源操作数是寄存器寻址,MOVA,#65H源操作数是立即寻址。

()

6.89C51用汇编语言表示的指令格式中标号可以与寄存器及指令助记符重名。

()

第四章

一、填空题:

汇编语言中可以使用伪指令,它们不是真正的指令,只是用来。

1.程序存储器空间表格如下:

地址

2000H

2001H

2002H

2003H

内容

3FH

06H

5BH

4FH

已知:

片内RAM的20H中为01H,执行下列程序后(30H)为多少?

MOVA,20H

INCA

MOVDPTR,#2000H

MOVCA,@A+DPTR

CPLA

MOV30H,A

END:

SJMPEND

2.(R0)=4BH,(A)=84H,片内RAM(4BH)=7FH,(40H)=20H

MOVA,@R0

MOV@R0,40H

MOV40H,A

MOVR0,#35H

问执行程序后,R0、A和4BH、40H单元内容的变化如何?

!

5.设R0=20H,R1=25H,(20H)=80H,(21H)=90H,(22H)=A0H,(25H)=A0H,(26H)=6FH,(27H)=76H,下列程序执行后,结果如何?

CLRC

MOVR2,#3

LOOP:

MOVA,@R0

ADDCA,@R1

MOV@R0,A

INCR0

INCR1

DJNZR2,LOOP

JNCNEXT

MOV@R0,#01H

SJMP$

NEXT:

DECR0

SJMP$

(20H)=,(21H)=,(22H)=,(23H)=,CY=,A=,R0=,R1=。

!

10.设片内RAM中(59H)=50H,执行下列程序段。

MOVA,59H

MOVR0,A

MOVA,#0

MOV@R0,A

MOVA,#25H

MOV51H,A

MOV52H,#70H

问A=,(50H)=,(51H)=,(52H)=。

1.在单片机语句格式中,(  )为不可缺省的。

A、标号  B、操作码助记符  C、操作数   D、注释

2.在编程中使用伪指令的目的是。

A.指示和引导如何进行手工汇编B.指示和引导编译程序如何汇编

C.指示和引导汇编程序进行汇编D.指示和引导程序员进行汇编

3.一中断子程序的最后一句不是RETI而是RET,中断返回后。

A.返回到主程序中ACALL或LCALL的下一句

B.返回到主程序中响应中断时一句的下一句

C.返回到主程序开始处

D.返回到0000H处

4.有如下程序段:

MOV    R0,#30H

            SETB   C

            CLR    A

            ADDC   A,#00H

            MOV   ﹫R0,A执行结果是()。

  A. (30H)=00H   B.(30H)=01H  

C.(00H)=00H  D.(00H)=01H 

1.  MOV SP,#35H

  MOV DPTR,#2345H

  PUSH DPL

  PUSH DPH

  ……

  POP DPH

  POP DPL

2.下列程序段执行后,(R0)=_____________,(7EH)=_____________,(7FH)=_____________.

MOVR0,#7FH

MOV7EH,#0

MOV7FH,#40H

DEC@R0

DECR0

DEC@R0

3.已知程序执行前有A=02H,SP=52H,(51H)=FFH,(52H)=FFH。

下述程序执行后:

POPDPH

POPDPL

MOVDPTR,#4000H

RLA

MOVB,A

MOVCA,@A+DPTR

PUSHA

MOVA,B

INCA

MOVCA,@A+DPTR

PUSHA

RET

ORG4000H

DB10H,80H,30H,50H,30H,50H

请问:

A=(),SP=(),(51H)=(),(52H)=(),PC=()。

4.设内部RAM(30H)=5AH,(5AH)=40H,(40H)=00H,端口P1=7FH,问执行下列指令后,各有关存储单元(即R0,R1,A,B,P1,30H,40H及5AH单元)的内容如何?

MOVR0,#30H;

MOVA,@R0;

MOVR1,A;

MOVB,R1;

MOV@R1,P1;

MOVA,P1;

MOV40H,#20H;

MOV30H,40H;

5.如果DPTR=507BH,SP=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后:

POPDPH

POPDPL

POPSP

则:

DPH=(),DPL=(),SP=()

6.已知(SP)=09H,(DPTR)=4567H,在执行下列指令后,(SP)=_________,内部RAM(0AH)=_________,(0BH)=_________

PUSHDPL

PUSHDPH

7.阅读下面多重循环延时程序,说明每条指令的执行次数,最后计算出延时时间,要求有计算过程。

(fOSC=12MHz)

源程序机器周期(M)指令执行次数

DELAY:

MOVR6,#64H

I1:

MOVR7,#0FFH

I2:

DJNZR7,I2

DJNZR6,I1

RET

1.试编写程序,查找在内部RAM的20H~40H单元中出现“00H”这一数据的次数。

并将查找到的结果存入41H单元。

2.三字节无符号数相加,其中被加数在内部RAM的50H,51H和52H单元中;加数在内部RAM的53H,54H和55H单元中;要求把相加之和存放在50H,51H,和52H单元中,进位存放在位寻址区的00H位中.

3.设双字节数X存在片内RAM41H、40H单元,Y存在42H、43H单元,编程求Z=X+Y,并存入片内RAM单元44H、45H、46H。

第五章

一、填空题:

1.89C51有5个中断源,有2个中断优先级,优先级由软件填写特殊功能寄存器加以选择。

2.外部中断INT1入口地址为。

3.89C51中,T0中断服务程序入口地址为。

89C51中断有个优先级。

4.微机与外设间传送数

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

当前位置:首页 > 小学教育 > 语文

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

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