单片机原理-期末考试试题-(附答案)

更新时间:2024-05-18 13:44:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

单片机模拟试卷001

一、选择题(每题1分,共10分)

1.8031单片机的( D )口的引脚,还具有外中断、串行通信等第二功能。

a)P0 b)P1 c)P2 d)P3 2.单片机应用程序一般存放在( B )

a) RAM b)ROM c)寄存器 d)CPU 3.已知某数的BCD码为0111 0101 0100 0010 则其表示的十进制数值为( B)

a) 7542H b) 7542 c) 75.42H d) 75.42 4.下列指令中不影响标志位CY的指令有( D )。 a)ADD A,20H b)CLR c)RRC A d)INC A 5.CPU主要的组成部部分为( A ) a)运算器、控制器 b)加法器、寄存器

c)运算器、寄存器 d)运算器、指令译码器 6.INTEL 8051 CPU是( C )位的单片机

a) 16 b)4 c)8 d)准16 7.8031复位后,PC与SP的值为( B ) a)0000H,00H b) 0000H,07H c) 0003H,07H

d)0800H,00H

8.当需要从MCS-51单片机程序存储器取数据时,采用的指令为

( B )。

a)MOV A, @R1 b)MOVC A, @A+DPTR c)MOVX A, @R0

d)MOVX A, @DPTR

9.8031单片机中既可位寻址又可字节寻址的单元( A ) a)20H b)30H c)00H d)70H 10.下列哪条指令是正确的( D )

a) PUSH R2 b) ADD R0,A c) MOVX A @DPTR d) MOV @R0,A 二、填空题(每空1分,共30分)

1.一个完整的微机系统由 硬件 和 软件 两大部分组成。 2.8051 的引脚RST是 IN (IN脚还是OUT脚),当其端出现 高 电平时,8051进入复位状态。8051一直维持这个值,直到RST脚收到 低 电平,8051才脱离复位状态,进入程序运行状态,从ROM 0000H H单元开始取指令并翻译和执行。

3.半导体存储器分成两大类 和 ,其中 具有易失性,常用于存储 临时数据 。

4.求十进制数-102的补码(以2位16进制数表示),该补码为 。 5.PC存放____CPU将要执行的指令所在的ROM单元的地址特性__________,具有_具有自动加1__________特性。在8051中决定程序执行顺序的是PC还是DPTR? 它是______位? (是,不是)SFG?

6.123= B= H。

7.8051内部有 并行口,P0口直接作输出口时,必须外接 ;并行口作输入口时,必须先 ,才能读入外设的状态。

8.MCS-51的堆栈只可设置在 内RAM低128B区 ,其最大容量为 ,存取数据的原则是 。堆栈寄存器SP是 位寄存器,存放 堆栈栈顶的地址 。

9.中断处理的全过程分为以下3个段: 、 、 。 10.定时和计数都是对 脉冲 进行计数,定时与计数的区别是 。

三、判断题(对者打√,错者打×,并改正,每题1分,共10分) 1 中断服务程序的最后一条指令是RET。

2 存储器分成内存和外存两大部分,其中外存可以直接与CPU交换信息。

3 P2口既可以作为I/O使用,又可以作地址/数据复用口使用。 4 在中断响应阶段CPU一定要做如下2件工作:保护断点和给出中断服务程序入口地址。 5 RC A为循环左移指令。

6 MOV A,30H的源操作数为立即寻址方式。 7 MOV A,@A+DPTR是一条查表指令。

8 MUL AB的执行结果是高8位在A中,低8 位在B中。 9 AJMP跳转空间最大可达到64KB 。{2Kb}

10 DPTR是由DPH和DPL两个8位特殊寄存器组成的。 四、简答题(每题5分,共15分)

1.MCS51的中断系统有几个中断源?几个中断优先级?中断优先级是如何控制的?在出现同级中断申请时,CPU按什么顺序响应(按由高级到低级的顺序写出各个中断源)?各个中断源的入口地址是多少?

2.已知单片机系统晶振频率为6MHz,若要求定时值为10ms时,定时器T0工作在方式1时,定时器T0对应的初值是多少?TMOD的值是多少?TH0=?TL0=?(写出步骤)

3.MCS51系列单片机的内部资源有哪些?说出8031、8051和8751的区别。

五、作图题(10分)

用6264(8K*8)构成16K的数据存储系统。要求采用线选法产生片选信号,并计算6264的地址范围。

六、设计题(1题13分;2题12分,共25分)

1.某单片机控制系统有8个发光二极管。试画出89C51与外设的连接图并编程使它们由左向右轮流点亮。

2.某控制系统有2个开关K1和K2,1个数码管,当K1按下时数码管加1,K2按下时数码管减1。试画出8051与外设的连接图并编程实现上述要求。

单片机模拟试卷001答案

一、选择题(每题1分,共10分)

1. D 2. B 3. B 4. D 5. A 6. C 7. B 8. B 9. A 10. D 二、填空题(每空1分,共30分)

1.一个完整的微机系统由硬件和软件两大部分组成。

2.8051 的引脚RST是IN脚(IN脚还是OUT脚),当其端出现高电平时,8051进入复位状态。8051一直维持这个值,直到RST脚收到低电平,8051才脱离复位状态,进入程序运行状态,从ROM 0000 H单元开始取指令并翻译和执行。

3.半导体存储器分成两大类:RAM ROM,其中 RAM 具有易失性,常用于存储 临时性数据 。

4.求十进制数-102的补码(以2位16进制数表示),该补码为 9AH 。

5.PC存放_CPU将要执行的指令所在的ROM单元的地址,具有自动加1特性。在8051中决定程序执行顺序的是PC还是DPTR PC ?它是16位?不是(是,不是)SFG? 6.123= 01010010 B= 52 H。

7.8051内部有 4 个并行口,P0口直接作输出口时,必须外接 上拉电阻 ;并行口作输入口时,必须先 将口锁存器置1 ,才能读入外设的状态。

8.MCS-51的堆栈只可设置在 内RAM低128B区,其最大容量为

128B,存取数据的原则是 先进后出。堆栈寄存器SP是 8位寄存器,存放 。9.中断处理的全过程分为以下3个段: 中断请求 、 中断响应 、 中断服务 。

10.定时和计数都是对 脉冲 进行计数,定时与计数的区别是 定时是对周期已知的脉冲计数;计数是对周期未知的脉冲计数 。 三、判断题(对者打√,错者打×,并改正,每题1分,共10分) 1 中断服务程序的最后一条指令是RETRETI。×

2 存储器分成内存和外存两大部分,其中外内存可以直接与CPU交换信息。×

3 P2口既可以作为I/O使用,又可以作地址/数据复用口使用。√ 4 在中断响应阶段CPU一定要做如下2件工作:保护断点和给出中断服务程序入口地址。√ 5 LCRL A为循环左移指令。×

6 MOV A,30H的源操作数为立即直接寻址方式。 7 MOVMOVC A,@A+DPTR是一条查表指令。×

8 MUL AB的执行结果是高低8位在A中,低高8 位在B中。×

9 AJMP跳转空间最大可达到64K ×2KB 。

10 DPTR是由DPH和DPL两个8位特殊寄存器组成的。 √ 四、简答题(每题5分,共15分)

1.MCS51的中断系统有几个中断源?几个中断优先级?中断优先级是如何控制的?在出现同级中断申请时,CPU按什么顺序响应(按由高级到低级的顺序写出各个中断源)?各个中断源的入口地址是多少?

答:MCS51单片机有5个中断源,2个中断优先级,中断优先级由特殊功能寄存器IP控制,在出现同级中断申请时,CPU按如下顺序响应各个中断源的请求:INT0、T0、INT1、T1、串口,各个中断源的

入口地址分别是0003H、000BH、0013H、001BH、0023H。

2.已知单片机系统晶振频率为6MHz,若要求定时值为10ms时,定时器T0工作在方式1时,定时器T0对应的初值是多少?TMOD的值是多少?TH0=?TL0=?(写出步骤)

答:定时值为10ms时,定时器T0工作在方式1时,定时器T0对应的初值是1388H

TMOD的值是00000001B,TH0=13H;TL0=88H。

3.MCS51系列单片机的内部资源有哪些?说出8031、8051和8751的区别。

答:MCS51系列单片机上有1个8位CPU、128B的RAM、21个SFR、4个并行口、1个串行口、2个定时计数器和中断系统等资源。8031、8051和8751的区别是8031内无ROM;8051内有4KB的掩膜ROM;8751内有4KB的EPROM。 五、作图题(10分) 答:WR接6264的WE RD接6264的OE

AB0---AB12接6264的A0---A12 DB0—DB7接6264的D0—D7 AB15、AB14分别接Y0和Y1

地址:0000H---1FFFH;2000H---3FFFH 六、设计题

1.某单片机控制系统有8个发光二极管。试画出89C51与外设的连接图并编程使它们由右向左轮流点亮。 答: 图 (5分) 构思 (3分) MOV A,#80H (1分) UP:MOV P1,A (1分) RR A (2分)

SJMP UP (1分)

2.某控制系统有2个开关K1和K2,1个数码管,当K1按下时数码管加1,K2按下时数码管减1。试画出8051与外设的连接图并编程实现上述要求。

答:图 (5分) 构思 (3分) 程序(4分) ORG 0000H LJMP MAIN ORG 0003H LJMP AINT0 ORG 0013H LJMP BINT1

MAIN: MOV IE,#83H; SETB IT0 SETB IT1 MOV R0,#00H MOV DPTR,#TAB UP: MOV A,R0 MOVC A,@A+DPTR MOV P1,A SJMP UP AINT0: INC R0 CJNE R0,#10,AINT01 MOV R0,#0 AINT01: RETI BINT1: DEC R0 CJNE R0,#0FFH,BINT11

MOV R0,#9 BINT11: RETI 单片机模拟试卷002

一、填空题(每空格1分,共10分)

1.MCS—51布尔处理机的存储空间是_______。

2.P2口通常用作_______,也可以作通用的I/O口使用。

3.若由程序设定RS1、RS0=01,则工作寄存器R0~R7的直接地址为______。

4.8051的堆栈区一般开辟在_______。 5.所谓寻址,其实质就是_______。 6.存储器映象是_______。

7.定时器中断请求发生在_______。 8.中断响应时间是指______。

9.通过CPU对I/O状态的测试,只有I/O已准备好时才能进行I/O传送,这种传送方式称为_______。

10.在中断服务程序中现场保护和现场恢复期间,中断系统应处在____状态。

二、单项选择题(在每小题的四个备选答案中,选出一个正确答案,

并将正确答案的序号填在题干的括号内。每小题1分,共10分) 1.MCS-51单片机复位操作的主要功能是把PC初始化为( )。

A.0100H B.2080H C.0000H D.8000H

2.若单片机的振荡频率为6MHz,设定时器工作在方式1需要定时1ms,则定时器初值应为( )。

A.500 B.1000 C.216-500 D.216-1000

3.定时器1工作在计数方式时,其外加的计数脉冲信号应连接到( )引脚。

A.P3.2 B.P3.3 C.P3.4 D.P3.5

4.当外部中断请求的信号方式为脉冲方式时,要求中断请求信号的高电平状态和低电平状态都应至少维持( )。 A.1个机器周期 B.2个机器周期 C.4个机器周期 D.10个晶振周期

5.MCS-51单片机在同一优先级的中断源同时申请中断时,CPU首先响应( )。

A.外部中断0 B.外部中断1 C.定时器0中断 D.定时器1中断

6.定时器若工作在循环定时或循环计数场合,应选用( )。 A.工作方式0 B.工作方式1 C.工作方式2 D.工作方式3

7.MCS-51单片机的外部中断1的中断请求标志是( )。 A.ET1 B.TF1 C.IT1 D.IE1 8.下列标号中,正确的标号是( )。

A.1BT: B.BEGIN: C.ADD: D.STAB31: 9.串行口每一次传送(A )字符。

A.1个 B.1串 C.1帧 D.1波特

10.要想把数字送入DAC0832的输入缓冲器,其控制信号应满足( )。

A.ILE=1,CS=1,WR1=0 B.ILE=1, CS=0, WR1=0 C.ILE=0, CS=1, WR1=0 D.ILE=0,CS=0, WR1=0

三、简答题(每小题4分,共20分) 1.如何正确使用P3口?

2.简述累加器的ACC的作用。

3.简述寄存器间接寻址方式及其寻址范围。 4.简述MCS-51单片机的中断入口地址。 5.简述串行数据传送的特点。

四、读程序题(每小题4分,共20分) 1.执行下列程序段后,(P1)=_______。 MOV P1,#5DH CPL P1.1 CPL P1.2 CLR P1.6

SETB P1.7

2.执行下列程序段后,(A)=_______,(CY)=____。 MOV A,#C5H RL A

3.下列程序段执行后,(R0)=_______,(7EH)= ____,(7FH)=_______。 MOV R0,#7EH MOV 7EH,#0FFH MOV 7FH,#40H 1NC @R0 1NC R0 1NC @R0

4.已知(SP)=60H,子程序SUBTRN的首地址为0345H,现执行位于0123H的ACALL SUBTRN双字节指令后,(PC)=___,(61H)=_______,(62H)= ____。 5.阅读下列程序,说明其功能。 MOV R0,#data MOV A,@R0 RL A

MOV R1,A RL A RL A

ADD A,R1 MOV @R0,A RET

五、编程题(每小题4分,共20分)

1.已知在累加器A中存放一个BCD数(0~9),请编程实现一个查平方表的子程序。

2.请使用位操作指令实现下列逻辑操作: BIT=(10H∨P1.0)∧(11H∨CY)

3.已知变量X存于VAR单元,函数值Y存于FUNC单元,按下式编程求Y值。

???01xx??00Y=???1x?0

4.已知在R2中存放一个压缩的BCD码,请将它拆成二个BCD字节,结果存于SUM开始的单元中(低位在前)。

5.将存于外部RAM 8000H开始的50H数据传送0010H的区域,请编程实现。

六、综合应用题(每小题10分,共20分)

1.已知如图,8155的PA口用于输出,PB口用于输入,PC口用于输出,请:

(1)写出8155的各I/O口的口地址和存储器的地址范围。 (2)编写出8155初始化程序。B155命令字格式:

2.已知如图并给出下列程序,请在读图并理解程序后回答下列问题: (1)程序功能为_______。

(2)ADC0809的口地址为_______。 (3)EOC的作用是_______。

(4)程序运行结果存于_______。 ADC:MOV DPTR,#7FFOH MOV R0,#0A0H MOV R2,#8 MOV A,#0

LOOP:MOVX @DPTR,A JB P3.3,$ MOVX A,@DPTR MOVX @R0,A 1NC DPTR 1NC R0

DJNZ R2,LOOP AJMP ADC

单片机模拟试卷002参考答案 一、填空题(每空1分,共10分) 1.00H~7FH

2.高8位地址线 3.08~0FH

4.用户RAM区

5.如何确定操作数的单元地址

6.存储器在整个存储空间的地址范围 7.定时时间到

8.从查询中断请求标志位到转向中断区入口地址所需的机器周期数

9.程序查询方式 10.关中断

二、单项选择题(每小题1分,共10分)

1.C 2.C 3.D 4.A 5.A 6.C 7.D 8.D 9.A 10.B 三、简答题(每小题4分,共20分) 1.要点:

(1)说明P3口有第一功能和第二功能的使用。 (2)P3口的第二功能各位线的含义。

(3)使用时应先按需要选用第二功能信号,剩下的口线才作第一功能I/O线用。

(4)读引脚数据时,必需先给锁存器输出“1”。 2.(1)8位专用寄存器。

(2)运算时存放一个操作数。

(3)运算后存放运算结果,所以称它为累加器。

3.(1)寄存器中存放的是操作数的地址,操作数是通过寄存器间

接得到,这种寻址方式称为寄存器间接寻址方式。

(2)寻址范围:

①内部RAM低128单位,形式@Ri(i=0,1)。

②外部RAM64K使用DPTR作间址寄存器,形式为@DPTR。 4.中断入口地址为中断响应后PC的内容即中断服务的入口地址。

它们是:外部中断0 0003H 定时器T0中断 000BH 外部中断1 0013H 定时器T1中断 001BH 串行口中断 0023H

5.(1)传送按位顺序进行,速度慢。

(2)传输线少,成本低。

(3)传送距离远,可达几公尺到几千公里。 四、读程序题(每小题4分,共20分) 1.(P1)=9BH

2.(A)=8BH(或10001011B) (CY)=不影响 3.(R0)=7FH + (7EH)=00H (7FH)=41H 4.(PC)=0345H (61H)=25H (62H)=01H

5.(data)×10操作

五、编程题(每小题4分,共20分) 1.SQR:1NC A MOVC A,@A+PC RET

TAB:DB 0,1,4,9,16 DB 25,36,49,64,81 2.ORL C,11H MOV 12H,C MOV C,P1.0 ORL C,/10H ANL C,12H MOV BIT,C RET

3. MOV A,VAR

CJNE A,#0,COMP

SJMP RES ;x=0,Y=0 COMP:JNC POSI ;x>0,Y=1 MOV A,#0FFH ;x<0,Y=-1 SJMP RES

POSI:MOV A,#01H RES:MOV FUNC,A

RET

4.MOV R0,#SUM MOV A,R2 ANL A,#OFH

MOV @R0,A ;存低字节BCD MOV A,R2 ANL A,#0F0H SWAP A 1NC R0

MOV @R0,A ;存高字节BCD RET

5. MOV DPTR,#8000H MOV R0,#10H MOV R2,#50H

LOOP:MOVX A,@DPTR ;取数 MOVX @R0,A ;存数 1NC DPTR 1NC R0

DJNZ R2,LOOP RET

六、综合应用题(每小题10分,共20分)

1.(1)

(2)初始化程序:

MOV DPTR,#0100H MOV A,#0DH

MOVX @DPTR,A

2.(1)巡回采集8个通道的数据

(2)ADC0809口地址为7FF0H~7FF7H(或7FF8~7FFFH) (3)EOC为A/D转换结束信号,用来引起中断或查询,以便读取A/D的转换结果。

(4)结果存入外部RAM的A0H~A7H。

单片机模拟试卷003 一、 填空

1.8051单片机的内部硬件结构包括

了: 、 、 、和

以及并行I/O口、串行口、中断控制系统、时钟电路、位处理器等部件,这些部件通过 相连接。

2.MCS-51的堆栈只可设置在 ,堆栈寄存器sp是 位寄存器。 3.MCS-51单片机的P0~P4口均是 I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建系统的 和 ,在P0~P4口中, 为真正的双相口, 为准双向口; 口具有第二引脚功能。

4.定时器/计数器的工作方式3是指得将

拆成两个独立的8位计数器。而另一个定时器/计数器此时通常只可作

为 使用。

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

后,DPTR的内容为 ,SP的内容是 。 二、 选择

1.MCS-96单片机的片内A/D转换器是()的转换器件。

A.4通道8位 B.8通道8位 C.8通道10位 D.8通道16位

2.MCS-51单片机的堆栈区应建立在()。

A. 片内数据存储区的低128字节单元 B. 片内数据存储区 C.片内数据存储区的高128字节单元 D.程序存储区 3.MCS-51单片机定时器工作方式0是指的()工作方式。 A.8位 B.8位自动重装 C.13位 D.16位

4.当需要从MCS-51单片机程序存储器取数据时,采用的指令为()。 A.MOV A, @R1 B.MOVC A, @A + DPTR C.MOVX A, @ R0 D.MOVX A, @ DPTR 三、 简答题

1.想将中断服务程序放置在程序存储区的任意区域,在程序中应该作何种设置?请举例加以说明。

2.51系列单片机具有几个中断源,分别是如何定义的?其中哪些中断源可以被定义为高优先级中断,如何定义? 四、 参数计算

已知一MCS51单片机系统外接晶体振荡器频率为11.059MHZ,计算: 单片机系统的拍节P、状态S、机器周期所对应的时间是多少? 指令周期中的单字节双周期指令的执行时间是多少? 五、 改错

请判断下列各条指令的书写格式是否有错,如有错说明原因: 1.MUL R0R1 2.MOV A,@R7 3.MOV A,#3000H 4.MOVC @A+DPTR, A 5.LJMP #1000H

六、使用简单指令序列完成以下操作 1.请将片外RAM20H-25H单元清零 2.请将ROM3000单元内容送R7 七、 编程题(20)

已知MCS-51单片机系统片内RAM20H单元存放乐一个8位无符号数7AH,片外扩展RAM的8000H存放了一个8位无符号数86H,试编程完成以上两个单元中的无符号数相加,并将和值送往片外RAM的01H、

00H单元中,同时将所编写程序运行完成后的数据和状态添入下表中给出的PSW的有关位以及寄存器A、DPTR和RAM单元中。 转贴于 265考试网 http://www.265ks.com/ CY A DPTR 片外01H 片外00H 片外8000H

单片机模拟试卷004

一、填空题(15分,每空1分)

1.MCS—51单片机的P0—P4口均是 I/O口,其

中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来

构建系统的 和 ,在P0—P4口中,为真正的双向口, 为准双向口。

2.MCS—5l单片机的堆栈区只可设置在 ,堆栈寄存器5P是 位寄存器。 3.MCS—51单片机外部中断请求信号有电平方式和 ,在电平方式下,当采集到INT0、INT1的有效信号为 时,激活外部中断。

4.定时器/计数器的工作方式3是指的将拆成两个独立的8位计数器。而另一个定时器/计数器此时通常只可作为 使用。

5.MCS—96单片机的最大寻址空间是 ,该空间的地址范围为 ,系统上电及复位的程序入口地址为 ,芯片配置字节CCB的地址为 。

说明MCS—51单片机的下列各条指令中源操作数的寻址方式(可直接在每条指令后面书写) 二、简答题(15分,每小题5分)

1.51系列单片机具有几个中断源,分别是如何定义的?其中哪些中断源可以被定义为高优先级中断,如何定义?

2.各中断源对应的中断服务程序的入口地址是否能任意设定? 3.如果想将中断服务程序放置在程序存储区的任意区域,在程序中应该作何种设置?请举例加以说明。

三、参数计算题(16分)

已知一单片机系统的外接晶体振荡器的振荡频率为11.059MHz,请计算该单片机系统的拍节P、状态S、机器周期所对应的时间是多少?指令周期中的单字节双周期指令的执行时间是多少? 四、改错题(共5分,每小题1分)

以给出的指令操作码为依据,请判断MCS—5l单片机的下列各条指令的书写格式是否有错误,如有请说明错误原因。 1.MUL R0R1 2.MOV A,@R7 3.MOV A,#3000H 4.MOVC @A+DPTR,A

5.LJMP #1000H

五、寻址方式(5分,每问1分)

1.ANL A,20H

2.ADDC A,#20H 3.JZ rel 4.CLR C

5.RRA

六、使用简单指令序列完成以下操作(12分)

1.请将片外RAM20H—25H单元清零

2.请将ROM3000H单元内容送R7 七、编程题(18分)

已知一MCS—51单片机系统的片内RAM 20H单元存放了一个8

位无符号数7AH,片外扩展RAM的8000H存放了一个8位无符号数86H,试编程完成以上两个单元中的无符号数相加,并将和值送往片外RAM的01H、00H单元中,同时将所编写程序运行完成后的数据和状态添入下表中给出的PSW的有关位以及寄存器A、DPTR和RAM单元中。

CY A DPTR 片外01H 片外00H 片外8000H 八、判读电路题(14分)

下图为MCS—51单片机系统中混合扩展多片存储器2764、6264芯片部分连线电路图。

试分析电路并回答下列问题:

1.请简单叙述2764芯片的功能、容量,在电路中起什么作用? 2.请简单叙述6264芯片的功能、容量,在电路中起什么作用? 3.请分析各片2764、6264所占用的单片机数据存储空间的地址范围是多少?

单片机模拟试卷004参考答案 一、填空题(15分,每空1分)

1.并行 数据总线 地址总线 P0 P1—P3 2.片内数据存储区(器) 3.脉冲方式 低电平

4.定时器/计数器0 串行口的波特率发生器

5.64K 0000H—FFFFH 2080H 2018H 二、简答题(15分,每小题5分)

1.具有5个中断源,分别是外部中断INT0和外部中断INT1、定时器溢出中断0和定时器溢出中断1以及串行中断。通过对中断优先级寄存器IP的设置,每个中断源都可以被定义为高优先级中断。(6分)

2.各中断源的入口地址已经在中断地址区中被定义了,不能任意设定。(3分)

3.如果要将中断服务程序放置在程序存储区的任意区域,在程序中要通过在中断地址区的对应地址上设置跳转指令才可实现对中断服务程序的执行。

例如:外部中断O的中断服务程序INTOP放置在程序存储区的任意区域,此时,通过以下方式,可实现对中断服务程序的执行:(4分)

ORGO003H (2分) JMP INTOP

列举其他中断跳转的例子也可,但叙述的中断源要与中断地址相对应才可得分,如外中断0对应0003H地址。 三、参数计算题(16分)

P=1/f=(1/11.059×106)=0.09×10-6s =90ns

S=2P=2×90ns=180ns

机器周期=12P=12×90ns=1.08μs 双指令周期=2×机器周期=2.16μs

判题标准:每问4分,结果错,分值全扣;结果正确,量纲错或

四、改错题:(共5分,每小题1分)

以给出的指令操作码为依据,请判断MCS—51单片机的下列各条指令的书写格式是否有错误,如有请说明错误原因。 1.MUL RoRl 乘法指令应使用A、B寄存器操作 2.MOV A,@R7 间接寄存器使用R7有误,间址寄存器只能使用R0、R1

3.MOV A, #3000H 8位累加器A不能接受16位数据 4.MOVC @A+DPTR,A MOVC指令为对程序存储区操作指令,累加器的内容不可通过变址方式送入程序存储器,两操作数写反了。 5.UMP #1000H 长转移指令中的操作数为16位转移地址,不能用立即数的形式来表达。 五、寻址方式(5分,每问1分)

说明MCS—51单片机的下列各条指令中源操作数的寻址方式(可直接在每条指令后面书写) 1.ANL A,20H 直接寻址

2.ADDC A, #20H 立即寻址

3.JZ rel 相对寻址

4.CLR C 位寻址

5.RRA 寄存器寻址

六、使用简单指令序列完成以下操作(12分,每小题6分)

1.请将片外RAM 20H—25H单元清零

MoV R0,#20H

MOV R7,#06H

CLR A

LOOP:MOVX @R0,A INC R0

DJNZ R7,LOOP

2.请将ROM 3000H单元内容送R7 MOV DPTR, #3000H CLR A

MOVC A,@A+DPTR

MOV R7,A

七、编程题(18分,其中编程12分,表中每一空1分) MOV DPTR,#8000H ;加数单元地址送DPTR

MOVX A,@DPTR ;取加数之一

ADD A,20H ;两数相加

MOV R0,#00H ;和值的低位送片外00H单元

MOVx @R0,A

INC R0

CLR A ;计算和值的高位

ADDC A,#00H

MOVx @R0,A ;高位送片外01H单元

RET

编程要考虑将进位位的值作为结果的一部分取出来。采用其他编程方式也可以,但结果是不会改变的,和值=100H

八、判读电路题(14分)

1.请简单叙述2764芯片的功能、容量,在电路中起什么作用?(3分)

2764为EPROM型存储器,其容量为8K,在电路中通常是作为程序存储器使用。

2.请简单叙述6264芯片的功能、容量,在电路中起什么作用?(3分)

6264为随机存储器,其容量为8K,在电路中通常是作为数据存储器使用。

3.请分析各片2764、6264所占用的单片机数据存储空间的地址范围是多少?

U3:0000H—1FFFH (8分,各2分) U4:2000H—3FFFFH U5:Co00H—DFFFH U6:E000H—FFFFH 单片机模拟试卷005

一、填空题(每空1分,共10分)

1.单片机内有组成微机的主要功能部件 、 和 。

2.堆栈的特性是 ,8051的堆栈一般开辟在 ,其堆栈指针是 。

3.RS232C是 总线标准。 4.8255是 接口。

5.MCS-51有一个全双工的 步串行口,有 种工作方式。

二、简述题(每题5分,共25分) 1.单片机的特性主要有哪些? 2.8031、8051、8751有何异同?

3.MCS-51的位存储区在哪里?寻址范围是多少?

4.8051的定时器/计数器有几个?是多少位的?有几种工作方式?其工作原理如何?

5.8051有哪几个中断源?哪些是内部中断源?哪些是外部中断源?

三、判断题(20分)

1.判断以下各条指令是否正确(LL1和PROC为标号)(10分) (1)MOVX @R0,B (2)MOV A,30H (3)MOVX A,30H (4)ADDC A,R7 (5)SUB A,R2 (6)ANL #99H ,36H CY A DPTR 片外01H 片外00H 片外8000H 0 01H 8000H 0lH 00H 86H (7)MOV C,ACC.0 (8)ORL P1.0,P3.1 (9)JBC P0,LL1 (10)ACALL PROC

2.判断以下说法是否正确,不正确予以改正。(10分) (1)单片机是面向数据处理的。

(2)定时器与计数器的工作原理均是对输入脉冲进行计数。 (3)由于MCS-51的串行口的数据发送和接收缓冲器都是SBUF,所以其串行口不能同时发送和接收数据,即不是全双工的串行口。

(4)END表示指令执行到此结束。

(5)ADC0809是8位逐次逼近式模/数转换接口。 四、阅读程序(20分)

1.下列各条指令其源操作数的寻址方式是什么?各条指令单独执行后,A中的结果是什么?(5分)设(60H)=35H,(A)=19H,(R0)=30H,(30H)=0FH。

(1)MOV A,#48H ;寻址方式:

(A)=

(2)ADD A,60H ;寻址方式: (A)=

(3)ANL A,@R0 ;寻址方式: (A)=

2.阅读下列程序段,写出每条指令执行后的结果,并说明此程序段完成什么功能?(15分) MOV R1,#30H ;(R1)= MOV A,#64H ;(A)= ADD A,#47H ;(A)= ,(CY)= , (AC)=

DA A ;(A)= ,(CY)= , (AC)= MOV @R1,A ;(R1)= ,(30H)= 此程序段完成的功能:

五、计算(画图)题(10分)

若8051的晶振频率fosc为6MHz,定时器/计数器T0工作在工作方式1,要求产生10ms定时,写出定时器的方式控制字和计数初值(分别写出TH0与TL0值)。

六、编程题(15分)

1.阅读程序并填空,形成完整的程序以实现如下功能。(5分) 有一长度为10字节的字符串存放在8031单片机内部RAM中,其首地址为40H。要求将该字符串中每一个字符加偶校验位。(以调用子程序的方法来实现。)

源程序如下: ORG 1000H MOV R0,#40H MOV R7,#10 NEXT: MOV A, ① ACALL SEPA MOV @R0,A INC R0

DJNZ ② ,NEXT SJMP $ SEPA: ADD A,#00H

③ PSW.0,SRET ORL A, ④

SRET: ⑤

2.从内部RAM30H单元开始,有10个单字节数据。试编一个程序,把其中的正数、负数分别送40H和50H开始的内部RAM单元。(10分)

单片机模拟试卷005参考答案

一、填空题(每空1分,共10分) 1.CPU;存储器;I/O接口

2.先进后出;内部RAM30H~7FH的范围内;SP 3.串行通信

4.通用的可编程并行 5.异;4

二、简述题(每题5分,共25分)

1.单片机具有体积小、可靠性高、控制功能强、使用方便、性能价格比高、容易产品化等特点。

2.8051、8751和8031均为8位单片机,其内部结构是基本相同的。

不同点为:8051内部有4KBROM,8751内部有4KBEPROM,而8031内部无程序存储器。

3.内部RAM的20~2FH为位寻址区域,位地址范围00~7FH;特殊功能寄存器中地址能被8整除的字节地址单元也可以位寻址,位地址范围80~FFH;位存储区共256个位。

4.8051有2个16位的定时器/计数器,有4种工作方式。 定时器与计数器的工作原理是相同的,8051的定时器/计数器是根据输入的脉冲进行加1计数,当计数器溢出时,将溢出标志位置1,表示计数到预定值。

5.8051有5个中断源,分别是定时器/计数器T0、T1的溢出中断TF0、TF1,串行口的收/发中断RI/TI,外部中断、;其中定时器/计数器T0、T1的溢出中断TF0、TF1、串行口的收/发中断RI/TI是内部中断源,外部中断、是外部中断源。

三、判断题(20分)

1.判断以下各条指令是否正确(LL1和PROC为标号)(10分) (1)× (2)○ (3)× (4)○ (5)× (6)× (7)○ (8)× (9)× (10)○

2.判断以说法是否正确:(10分) (1)× 单片机是面向控制的。 (2)○

(3)× 由于MCS-51的串行口的数据发送和接收缓冲器都是SBUF,但在物理上,实际上是两个缓冲器,其串行口可以同时发送和接收数据,是全双工的串行口。

(4)× END表示指令汇编到此结束。 (5)○

四、阅读程序(20分) 1.(5分)(60H)=35H,(A)=19H,(R0)=30H,(30H)=0FH。 (1) 立即寻址 ; 48H (2) 直接寻址 ; 4EH (3) 寄存器间接寻址 ; 09H

2.阅读下列程序段,写出每条指令执行后的结果,并说明此程序段完成什么功能?(15分) MOV R1,#30H ;(R1)= 30H MOV A,#64H ;(A)= 64H ADD A,#47H ;(A)= ABH (CY)= 0 (AC)= 0

DA A ;(A)= 11H ,(CY)= 1 (AC)= 1 MOV @R1,A ;(R1)= 30H ,(30H)= 11H 此程序段完成的功能:(5分)求两个BCD码数(64H和47H)的和,并将结果放在内部RAM的30H单元。

五、计算(画图)题(10分) (1)(5分)T0:定时方式,工作在方式1。 方式字TMOD=01H (2)(5分)fosc=6MHz,16位计数器,10ms定时,设计数初值为a,

t=12/ fosc*(216 - a) 10*103=12/6 *(216 - a) a=60536=EC78H 即TH0=ECH TL0=78H 所以:TMOD=01H TH0=ECH TL0=78H

六、编程题(15分) 1.(5分)

① @R0 ② R7 ③ JNB ④ #80H ⑤ RET

2.从内部RAM30H单元开始,有10个单字节数据。试编一个程序,把其中的正数、负数分别送40H和50H开始的内部RAM单元。(10分)

MOV R0,#30H MOV R1,#40H MOV A,#50H MOV R7,#10 LOOP: MOV 20H,@R0

JB 20H.7,FSHU ZSHU: MOV @ R1,20H INC R1 SJMP NEXT FSHU: XCH A,R1 MOV @R1,A XCH A,R1

INC A NEXT: DJNZ R7,LOOP SJMP $ 机模拟试卷006及答案

一、填空(每题2分,共10分)

1、MCS-51单片机片内有 5 个中断源,其中 2 个外部中断源。

2、设定T1为计数器方式,工作方式2,则TMOD中的值为 60H(高位为6即可) 。

3、若IT1=0,当引脚 P3.2 为低电平的时候,INT0的中断标志位 IE0 才能复位。

4、在接口电路中,把已经编址并能进行读写操作的寄存器称为 端口。

5、在单片机中,为实现数据的I/O传送,可使用三种控制方式,即 无条件传送 方式、查询 方式和 中断 方式 二、选择题(每小题2分,共10分)

1、寻址空间为数据程序存储器所用的指令是( A ): A. MOVX B.MOV C.MOVC D.ADDC 2、执行中断返回指令,从堆栈弹出地址送给( C ). A. A B. CY C. PC D. DPTR

3、七段共阴极发光两极管显示字符‘H’,段码应为(E ) A.67H B. 6EH C. 91H D. 76H E.90H

4、在串行通信中, 8031中发送和接收的寄存器是( B) 。 A.TMOD B. SBUF C. SCON D. DPTR 5、波特的单位是(B )

A. 字符/秒 B. 位/秒 C. 帧/秒 D. 字节/秒

三、指令题(每小题4分,共16分) 1、将20H单元清零 MOV 20H,#00H 或 CLR A MOV 20H, A

2、将片外RAM2000H中的低字节与片内20H中的低字节交换。 MOV DPTR,#2000H XCHD A,@R0 MOV R0,#20H MOVX @DPTR,A MOVX @DPTR,A

3、已知某端口地址为2FFFH,将片内RAM20H的内容写到该端口中。 MOV A, 20H MOVX DPTR, #2FFFH MOVX @DPTR, A

4、把DPTR的内容压入堆栈 PUSH DPH PUSH DPL

四、填写下表(每空2分,共10分)

指令 寻址空间 CLR 40H 位寻址区

PUSH ACC 片内RAM(数据存储器) MOVC A,@A+PC (ROM)程序存储器 SJMP $ (ROM)程序存储器 MOVX @DPTR, A 外部RAM(数据存储器) 五、读程序(每小题5分,共10分)

1、设(A)=38H,R0=28H,(28H)=18H,执行下列程序后,(A)= 0E7H ORL A,#27H ANL A,28H XCHD A,@R0 CPL A

2、设(A)=38H,(20H)=49H,PSW=00H,(B)=02H,填写以下中间结果。 SETB C

ADDC A, 20H (A)= 82H (CY)= 0 (AC)= 1 RLC A (A)= 04H (CY)= 1 (P)= 1 MUL AB (A)= 08H (B)= 00H (OV)= 0

六、简答题(共14分)

1、简述子程序调用和执行中断服务程序的异同点。(8分) 相同点:均能中断主程序执行本程序,然后再返回断点地址继续执行主程序。

不同点:

(1)中断服务程序入口地址是固定的,子程序调用入口地址是用户自己设定的。

(2)中断服务子程序返回指令除具有子程序返回指令所具有的全部功能之外,还有清除中断响应时被置位的优先级状态、开放较低级中断和恢复中断逻辑等功能。

(3)中断服务子程序是在满足中断申请的条件下,随机发生的;

而子程序调用是用户主程序事先安排好的。

2、已知晶振频率为6MHz,在P1.0引脚上输出周期为500微秒的等宽矩形波,若采用T1中断,工作方式2,试写出中断初始化程序(6分)

MOV TMOD, #20H SETB ET1 MOV TL1, #06H

SETB TR1

MOV TH1, #06H SJMP $ SETB EA 七、编程题(10分)

将内部RAM20H为首的16个单元的8位无符号数排序写出程序,并作适当注释

SORT: MOV R0, #20H MOV R7,#07H

CLR TR0 ;交换标志位复位

LOOP: MOV A,@R0

MOV 2BH, A INC R0

MOV 2AH, @R0 CLR C

SUBB A, @R0;比较前后两个数

JC NEXT ; MOV @R0, 2BH

DEC R0

MOV @R0, 2AH

INC R0

SETB TR0 ;置交换标志位有效 NEXT: DJNZ R7, LOOP

1、 ALE、PSEN、WR、RD的功能

ALE作地址锁存的选通信号,以实现低八位地址的锁存,PSEN信号

作扩展程序存储器的读选通信号

WR、RD作为扩展数据存储器和I/O端口的读写选通信号。 2、 图中各芯片的功能

74LS373:地址锁存器,用来锁存P0口发送的地址低8位

JB TR0, SORT;若交换标志位有效,继续进行 HERE: SJMP $

八、读图题(20分)

阅读下列硬件图,补齐连接线(5分),并回答问题(各5分):

2764 :容量为8KB的程序存储器(EPROM)用来存储程序 6264 :容量为8KB的数据存储器(RAM)用来存储数据 8031:不含程序存储器的8位单片机芯片,是不带I/O设备的微型计算机。

3、2764、6264的地址范围(P2.5取”0”)

2764:8000H~9FFFH 6264: 4000H~5FFFH

机模拟试卷007 一、 填空题:(共30空,每空1分)

1. 单片机即一个芯片的计算机,此芯片上包括五部分:运算器、

_________、________、输入部分、________。 2. 只有在________码表示中0的表示是唯一的。

3. MCS—51指令系统中 direct表示的含义是:_____________________。

4. P0、P1、P2、P3四个均是___位的____口(填“串行”还是“并行”),其中P0的功能是______________________;P2口的功能是___________;而_________是双功能口;______是专门的用户口。

5. 任何程序总是由三种基本结构组成:顺序、分支和_________。 6. MCS—51指令共有六种寻址方式,分别是立即数寻址、_________、_________、寄存器间接寻址、__________、相对寻址。

7. MOV DPTR,#data16的作用是用来设定_________。

8. 片内RAM可进行位寻址的空间位地址范围是______________。

9. MCS—51的存储器空间配置从功能上可分为四种类型:__________、内部数据存储器、__________、外部程序存储器。

10.MCS-51的指令按其功能可分为五大类:_________、________、逻辑运算类指令、位操作指令、控制转移指令。 11.输入输出设备与主机的连接部分称为输入输出接口,接口有三大作用:_________作用、_________作用和信号电平与形式的变换作用。

12.MCS—51内部的SFR共有______个。

13.CJNE <目的字节>,<源字节>,rel属于五大类指令中的_________类指令,其操作码助记符含义是_____________。 14.8051单片机有________个中断源,________级中断优先级别。 15.8255A属于可编程的________ IO接口芯片,8255A的A通

道有________种作方式。

二、 选择题:(共15题,每题1分)

1. 10101.101B转换成十进制数是( )。

(A)46.625 (B)23.625 (C) 23.62 (D)

21.625

2. 存储器的地址范围是0000H~0FFFH,它的容量为( )。 (A)1KB (B) 2KB (C) 3KB (D) 4KB

3. 3D.0AH转换成二进制数是( )。

(A)111101.0000101B (B) 111100.0000101B

(C) 111101.101B (D) 111100.101B

4. 73.5转换成十六进制数是( )。

(A)94.8H (B) 49.8H (C) 111H (D) 49H

5. MOVX A , @R0指令中,源操作数采用( )寻址方式,指令作用在( )区间。

(A)寄存器,外部数据存储器 (B)直接,程序存

储器

(C)寄存器间接 ,内部数据存储器 (D)寄存器间接,

外部数据存储器 6. A7H和5BH两个立即数相加后,和为( ),(CY)是( )。 (A)1CH,0 (B) C1H,0 (C) 02H,1 (D) C1H,1 7. 若(A)=86H,(PSW)=80H,则执行RRC A指令后(A) (A)C3H (B) B3H (C) 0DH (D) 56H 8.如果(P0)=65H ,则当

CPL P0.2 SETB C

MOV P0.4 ,C 执行后(P0)=( )

(A)61H (B) 75H (C) 71H (D) 17H 9. ( )指令是MCS-51指令系统中执行时间最长且长达4 us的。 (A)比较转移 (B)循环转移 (C)增减量 (D)乘除法 10. 8031单片机中,将累加器A中的数送入外RAM的40H单元,可执行的指令( )。 (A) MOV R1 ,40H (B) MOV R1 ,#40H MOVX @R1 , A MOVX R1 , A (C) MOVX 40H , A (D) MOV R1, #40H MOVX @R1 , A 11. 已知累加器A的数值为98H,它与0FAH相加,相加后会影响标志位CY、AC和OV位。各个位的值是( )。 (A) 0、0、0 (B) 1、0、1 (C) 1、1、1 (D) 1、1、0

12.不属于单片机与输入输出设备进行信息交换的方式是( )。

(A) 无条件传送方式 (B) 查询方式 (C) 中断方式

(D) 存储器直接存取方式

13.8051与8255A的硬件连接如图P110图6-7,其中规定未用的

地址线取0。则8255A的控制字寄存器的地址是( )

(A) 0000H (B) 0001H (C) 0002H

(D) 0003H

14.A/D转换方法有以下四种,ADC0809是一种采用( )进行A/D

转换的8位接口芯片。

(A) 计数式 (B) 双积分式 (C) 逐次逼近式

(D) 并行式

15.8051单片机内有( )个16位的定时/计数器 ,每个定时/计数

器都有( )种工作方式。

(A) 4, 5 (B) 2, 4 (C) 5, 2

(D) 2, 3

三、 判断指令(或伪指令)正误 (共15题,每题1分)

(1). MOV 20H , R1 ( ) (2). ADDC A ,

2030H ( )

(3). CLR A ( ) (4). MOVX 40H , #30H( )

(5). ORG 3000H ( ) (6). MOVC @A+PC , A( ) (7). MOVX A ,2000H ( ) (8). DJNZ #data , rel ( )

(9). INC @R5 ( ) (10). DEC DPTR ( ) (11). MOV R1 ,@ R2 ( ) (12). SWAP

R1 ( )

(13). SETB 2000H ( ) (14). JZ A , LOOP ( ) (15) DA R2 ( ) 四、分析程序并写出结果:(共4题,每题5分)

1.已知(R0)=20H, (20H ) =10H, (P0) =30H, (R2) =20H, 执行

如下程序段后( 40H ) =

MOV @R0 , #11H

MOV A , R2

ADD A , 20H

MOV PSW , #80H

SUBB A , P0

XRL A , #45H

MOV 40H , A

2. 已知 ( R0 )=20H, (20H )=36H, (21H) =17H, (36H) =34H, 执

行过程如下:

MOV A , @R0

MOV R0 , A MOV A , @R0 ADD A , 21H ORL A , #21H

RL A

MOV R2 , A

RET

则执行结束(R0)= (R2)= 3. 执行下面一段程序; MOV SP, #60H MOV A, #10H MOV B, #01H PUSH A PUSH B POP A POP B

A , B的内容是:(A)= (B)= 4. 设在31H单元存有#23H,执行下面程序: MOV A, 31H ANL A, #0FH MOV 41H, A MOV A, 31H ANL A, #0F0H SWAP A

MOV 42H, A

则(41H)= (42H)=

五、简答及做图题:(共2题、每题5分)

1.用图示形式画出MCS—51内部数据存储器(即内 RAM含特殊功能寄存器)的组成结构,并简单说明各部分对应用途。

2.要在8051单片机片外扩展16K数据存储器,选择其地址为0000H~3FFFH。如果选用6264芯片为存储芯片,74LS138为译码器,试画出它的硬件连接图。

六、编程题:(共2题,每题5分)

1. 将字节地址30H~3FH单元的内容逐一取出减1,然后再放回原处,如果取出的内容为00H,则不要减1,仍将0放回原处。

2. 按以下要求编写8051单片机定时器的初始化程序:

(1) T0作为定时,定时时间为10ms. (2) T1作为计数,记满1000溢出。

机模拟试卷007参考答案

一。填空题

1. 存储器、 控制器、 输出部分。 2. 补

3. 片内存储器地址。

4. 8, 并行, 地址/数据分时复口, 高8位地址口,5. 循环。

6. 直接寻址, 寄存器寻址, 变址寻址。 7. 地址指针。 8. 00H~FFH。

9. 片内程序存储器, 外部数据存储器。 10. 数据传送类, 算术运算类。

11. 隔离与寻址作用, 所存与缓冲作用 12. 21

13. 5, 2 14. 并行, 3 二。 选择题 1~5 DDABD 6~10 CACDD 7~15 DDDCB 三。判断题

⑴√ ⑵× ⑶√ ⑷× ⑸√ (6)× ⑺× ⑻× ⑼× ⑽× ⑾× ⑿× ⒀× ⒁× ⒂× 四。分析程序并写出结果。

1.(20H)←11H (A)←20H

(A)←(A)+(20) (CY)=1

(A)-(P0)-(CY)→(A)即(A)←00H

。 P1

(A)+45H→(A)即(A)←45H (40H)←45H 2.(A)←((R0)) (A)=36H (R0)←(A) (R0)←36H (A)←((R0)) (A)←34H

(A)←(A)+(21H) 34H+17H=4BH (A)←(A)?21H 4BH?21H=6BH (A)←D6H (R2)←D6H

(R0)=36H (R2)=D6H 3.(A)=01H (B)=10H

4. (41H)=03H (42H)=02H 五。1.MOV R7,#10H MOV R1,#30H

LOOP:CJNE @R1,#00H,NEXT MOV @R1,#00H SJMP NEXT1 NEXT: DEC @R1 NEXT1: INC R1

DJNZ R7,LOOP SJMP $ END

2.(1) ① T0的工作方式0时: t13max=2×12 =213fc×2us=16.384ms

定时10ms可达要求,则X=213

-10ms2us=213

-10000us2us

=3192=C78H=6318H

②T0工作在方式1时: t1616max=2×12fc=2×2us=131.072ms

定时10ms也可达要求,则X=216

-10ms2us=EC78H

③T0工作在方式2或3时: t8max=2×12=28fc×2us=512us

定时500us,循环20次,X=28-500us2us=06H

(2) 方式0:213-100=8092=1F9CH=FC1CH X=M-计数值 方式1:216-100=FF9CH

方式2或3:28-100=9CH

① DELAY: MOV TMOD #00H(#01H / #10H / #11H) (MOV R3 ,#14H) MOV TH0 , #63H MOV TL0, #18H SETB TR0

LP1: JBC TF0 ,CLOSE SJMP LP1 CLOSE: SJMP $ RET 五.简答及做图题

21个SFR 堆栈及数据缓冲 区 128个位寻址区 工作寄存器

机模拟试卷008

一. 单项选择题(30分)

1.在中断服务程序中至少应有一条( )

A.传送指令 B.转移指令 C.加法指令 D.中断返回指令 2.当MCS-51复位时,下面说法准确的是( )

A.PC=0000H B.SP=00H C.SBUF=00H D.(30H)=00H

3.要用传送指令访问MCS-51片外RAM,它的指令操作码助记符是( ) A.MOV B.MOVX C.MOVC D.以上都行 4.ORG 2000H LACLL 3000H ORG 3000H RET

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

A.2000H B.3000H C.2003H D.3003H

5.要使MCS-51能响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内容应是( )

A.98H B.84H C.42H D.22H 6.JNZ REL指令的寻址方式是( )

A.立即寻址 B.寄存器寻址 C.相对寻址 D.位寻址 7.执行LACLL 4000H指令时, MCS-51所完成的操作是( )

A保护PC B.4000H?PC C.保护现场 D.PC+3入栈, 4000H?PC

8.下面哪条指令产生WR信号( )

A.MOVX A,@DPTR B.MOVC A,@A+PC C.MOVC A,@A+DPTR D.MOVX @DPTR,A 9.若某存储器芯片地址线为12根,那么它的存储容量为( ) A. 1KB B. 2KB C.4KB D.8KB 10.要想测量INT0引脚上的一个正脉冲宽度,则TMOD的内容应为

( ) A.09H B.87H C.00H D.80H 11.PSW=18H时,则当前工作寄存器是( ) A.0组 B. 1组 C. 2组 D. 3组 12.MOVX A,@DPTR指令中源操作数的寻址方式是( ) A. 寄存器寻址 B. 寄存器间接寻址 C.直接寻址 D. 立即寻址 13. MCS-51有中断源( ) A.5 B. 2 C. 3 D. 6 14. MCS-51上电复位后,SP的内容应为( ) A.00H B.07H C.60H D.70H 15.ORG 0003H LJMP 2000H ORG 000BH LJMP 3000H

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

A.0003H B.2000H C.000BH D.3000H 16.控制串行口工作方式的寄存器是( )

A.TCON B.PCON C.SCON D.TMOD

17.执行PUSH ACC指令, MCS-51完成的操作是( ) A.SP+1?SP, ACC?SP B. ACC?SP, SP-1?SP C. SP-1?SP, ACC?SP D. ACC?SP, SP+1?SP 18.P1口的每一位能驱动( )

A.2个TTL低电平负载 B. 4个TTL低电平负载 C.8个TTL低电平负载 D.10个TTL低电平负载 19.PC中存放的是( )

A.下一条指令的地址 B. 当前正在执行的指令

C.当前正在执行指令的地址 D.下一条要执行的指令

20.8031是( )

A.CPU B.微处理器 C.单片微机 D.控制器 21.要把P0口高4位变0,低4位不变,应使用指令( ) A.ORL P0,#0FH B.ORL P0,#0F0H C.ANL P0,#0F0H D.ANL P0,#0FH

22.下面哪种外设是输出设备( )

A.打印机 B.纸带读出机 C.键盘 D.A/D转换器

23.所谓CPU是指( ) A.运算器和控制器 B.运算器和存储器 C.输入输出设备 D. 控制器和存储器 24.LCALL指令操作码地址是2000H,执行完响应子程序返回指令后,PC=( ) A.2000H B.2001H C.2002H D.2003H 25. MCS-51执行完MOV A,#08H后,PSW的哪一位被置位( ) A.C B. F0 C.OV D.P 26.计算机在使用中断方式与外界交换信息时,保护现场的工作应该是( ) A.由CPU自动完成 B.在中断响应中完成 C.应由中断服务程序完

成 D.在主程序中完成

27.关于MCS-51的堆栈操作,正确的说法是( )

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

28.某种存储器芯片是8KB*4/片,那么它的地址线根数是( ) A.11根 B.12根 C. 13根 D. 14根

29.若MCS-51中断源都编程为同级,当他们同时申请中断时CPU首先响应( )

A.INT1 B. INT0 C.T1 D.T0

30. MCS-51的相对转移指令的最大负跳变距离( ) A.2KB B. 128B C. 127B D. 256B 二.判断题(10分) 1.我们所说的计算机实质上是计算机的硬件系统和软件系统的总称。 ( ) 2.MCS-51的程序存储器只能用来存放程序。 ( )

3.TMOD中GATE=1时,表示由两个信号控制定时器的启停。 ( ) 4.当MCS-51上电复位时,堆栈指针SP=00H。 ( )

5.MCS-51的串口是全双工的。 ( ) 6.MCS-51的特殊功能寄存器分布在60H~80H地址范围内。 ( ) 7.相对寻址方式中,“相对”两字是相对于当前指令的首地址。 ( ) 8.各中断源发出的中断请求信号,都会标记在MCS-51系统中的TCON中。 ( ) 9.必须进行十进制调整的十进制运算只有加法和减法。 ( ) 10.执行返回指令时,返回的断点是调用指令的首地址。 ( ) 三.计算题(22分) 1.(A)=3BH,执行ANL A,#9EH指令后,(A)= (CY)=

2.JNZ REL为2B指令,放于1308H,转移目标地址是134AH,求偏移量REL=

3.若(A)=C3H,(R0)=AAH,执行ADD A,R0后,(A)= (CY)=

(OV)= (AC)= 4.若(A)=50H,(B)=A0H,执行MUL AB后,(A)= (B)= (CY)=

(OV)=

5.SJMP 0E7H为2B指令,放于F010H,目标地址= 四.阅读并分析程序(28分) 1.2506H M5:MOV SP,#58H 2509H MOV 10H,#0FH 250CH MOV 11H,#0BH

250FH ACALL XHD ;PC+2?PC , ??SP?1?SP,PC7~0?SP??SP?1?SP,PC?

?15~8?SP??addr10~0?PC??MOV 20H,11H 2514H M5A:SJMP M5A XHD:PUSH 10H PUSH 11H POP 10H POP 11H RET 问:(1)执行POP 10H后堆栈内容? (2)执行M5A:SJMP M5A后,(SP)= (20H)= 2.A程序存储空间表格如下: 地址 2000H 2001H 2002H 2003H 。。。。。 内容 3FH 06H 5BH 4FH 。。。。。

已知:片内RAM的20H中为01H,执行下列程序后(30H)= MOV A,20H INC A

MOV DPTR,#2000H MOVC A,@A+DPTR CPL A

MOV 30H,A SJMP $

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

MOV A,@R0 MOV @R0,40H MOV 40H,A MOV R0,#35H

问执行程序后,R0= A= 4BH= 40H= 4.若PSW=00, 执行下列程序后,PSW的各位状态如何?

MOV A,#0FBH MOV PSW,#10H ADD A,#7FH CY AC OV P OF 五. 程序填空(10分) 1.数据块传送,将RAM从30H开始的连续32个单元的内容传递给片内RAM从60H开始的连续32个单元。 ORG 1000H

MOV R7,_____

MOV R0, #30H MOV R1,#60H

LOOP:MOV A,@R0 MOV _____,A INC R0 INC R1

DJNZ R7, _____ SJMP $ END

2. 将4个单字节数放片内30H~~33H,它们求和结果放在片内40H,

41H单元。

ORG 1000H

MOV R7,#04H MOV R0,30H CLR A

MOV 41H,A

LOOP: ADD A,@R0 JNC NEXT

INC _____

NEXT:INC _____

DJNZ R7,LOOP MOV 40H,A SJMP $ END

3.RAM中40H单元内存有一个十六进制数,把这个数转换为BCD码的十进制数,BCD码的十位和个位放在累加器A中,百位放在R2中。

ORG 2200H RS1 MOV A,_____ MOV B,#64H DIV AB MOV R2,A MOV A,_____ XCH A,B DIV AB SWAP _____ ORL A,B SJMP $ END

4.编程序将片内40H-46H单元内容的高4位清零,保持低4位不变。 ORG 1000H MOV R7,#07H

MOV R0,_____

LOOP:MOV A,@R0

ANL A,_____ MOV @R0,A INC R0

DJNZ R7,LOOP SJMP $

END 机模拟试卷008参考答案

2.__41H___ __R0___

3.__40H___ _#0AH____ __A___ 4._#40H____ __#0FH___

机模拟试卷009 一、

填空题(共20分,每题4分)

一:单选题:(30分) 1、单片机试验系统与微机是通过 相连。

题号 1 2 3 4 5 6 7 8 9 10 答案 D A B C A C D D C A 2、若想进入全屏幕编辑界面,按下 功能键,按ALT+F建

题号 11 12 13 14 15 16 17 18 19 20 答案 D B A B B C A B A C 立新文件,即可开始输入源文件。 题号 21 22 23 24 25 26 27 28 29 30 答案 D A A D D C C C B B 3、当程序输入错误或需要调整时,使用 命令完成。 二.判断题:(10分) 题号 1 2 3 4 5 6 7 8 9 10 4、将立即数#33H送20H单元使用 指令。 答案 √ × √ × √ × × × × × 三.计算题:(22分) 5、入栈指令使用 指令。 (1)(A)=1AH (CY)=不受影响 (2)REL=40H 二、 程序分析题(共20分,每题10分) (3)(A)= 6DH (CY)= 1 (OV)=1 (AC)=0 (4)(A)=00H (B)=32H (CY)= 总为0 (OV)=1 1、位地址为M、N、Y,程序如下: (5)目标地址=EFF9H

四:阅读并分析程序(28分) MOV C,M ;(M) ?C (1)1)执行POP 10H后堆栈内容?(SP)=5AH 2)执行M5A:SJMP M5A后,(SP)=58H (20H)=0FH ANL C, ;(M) (2)(30H)=5BH

(3)R0=35H A=7FH 4BH=20H 40H=7FH MOV Y,C ;(Y)=(M) (4) CY AC OV P OF RS1 MOV C,M ;(M) ?C 1 1 0 1 0 1 五、 程序填空(10分) ANL C,N ;(M)

1._#20H_ __R1___ _LOOP____

ORL CY ; MOV Y,C 求程序功能表达式:

2、阅读下列程序并回答问题

CLR C MOV A,#9AH SUBB A,60H ADD A,61H, DA A MOV 62H,A

(1)请问该程序执行何种操作?

(2)已知初值:(60H)=23H,(61H)=61H,请问运行程序后:(62H)=( )?

三、 编程题(共60分,每题30分)

1、将31H、32H单元与41 H、40H单元的双字节十进制无符号数相加,结果存入32H,31H,30H单元。即(31H)(30H)+(41H)(40H) 32H、31H、30H。 (1) 输入程序 参考程序

MOV R0,#30H

MOV R1,#40H MOV R2,#02H CLR C L1: MOV A,@R0

ADDC A,@R1 DA A MOV @R0,A INC R0 INC R1 DJNZ R2,L1 CLR A MOV ACC.0,C MOV @R0,A

(2) 在31H、30H单元存入加数如3018,在41H,40H单元存入

被加数如8975。

(3)输入程序首地址,(从处为2000H),然后开始单步或断点运行该段程序。

(4)运行过程中检查数据的变化,并在最后检查(32H)= ,(31H)= , (30H)= 。

2、 编程实现逻辑运算:Q=(U *(V+W))+X.Y)+Z。设U~Z的位地址为00H~05H.Q的位地址为07H。《实际中U~Z可以是外部

输入端口信号或软件设定的一些控制位》。 实习步骤:

(1)输入所编程序。

MOV C,01H O RL C,02H ANL C,00H

MOV F0,C ;暂存U*(V+W)的值

MOV C,03H ANL C,/04H ORL C,F0 ORL C,/05H

MOV 07H,C ; 保存结果 (2)部RAM20H单元(位地址00H~07H的位在20H单元)输入某个数据(注意此时各位的状态并做好记录)。

(3)单步或断点运行所编程序,逐步检查Cy及个数据的变化情况(注意检查时也按字节读出,再观察其相应位)。 (4)验证运行结果 (5)改变20H单元的置数, 《单片机原理与应用》试题009答案 三、

填空题(共20分,每题4分)

1、单片机试验系统与微机是通过 串行通讯电缆 相连。

2、若想进入全屏幕编辑界面,按下F1功能键,按ALT+F建立新

文件,即可开始输入源文件。

3、当程序输入错误或需要调整时,使用A命令完成。 4、将立即数#33H送20H单元使用MOV 20H,#33H指令。 5、入栈指令使用PUSH ACC指令。 四、 程序分析题(共20分,每题10分) 1、位地址为M、N、Y,程序如下:

MOV C,M ;(M) ?C ANL C, ;(M) MOV Y,C ;(Y)=(M) MOV C,M ;(M) ?C ANL C,N ;(M)

ORL CY ; MOV Y,C 程序功能表达式: (Y)=(M)*(/N)+(M)*(N)

2、阅读下列程序并回答问题

CLR C MOV A,#9AH SUBB A,60H ADD A,61H, DA A MOV 62H,A

(3)请问该程序执行何种操作?

(4)已知初值:(60H)=23H,(61H)=61H,请问运行程序后:(62H)=( )? 解

(1) 操作是单字节BCD码运算,是将

(61H)-(60H)?62H

(2)(62H)=38H

四、 编程题(共60分,每题30分)

1、将31H、32H单元与41 H、40H单元的双字节十进制无符号数相加,结果存入32H,31H,30H单元。即(31H)(30H)+(41H)(40H) 32H、31H、30H。 (1) 输入程序

参考程序 MOV R0,#30H

MOV R1,#40H MOV R2,#02H CLR C L1: MOV A,@R0

ADDC A,@R1 DA A MOV @R0,A INC R0 INC R1 DJNZ R2,L1 CLR A MOV ACC.0,C MOV @R0,A

(2) 在31H、30H单元存入加数如3018,在41H,40H单元存入

被加数如8975。

(3)输入程序首地址,(从处为2000H),然后开始单步或断点运行该段程序。

(4)运行过程中检查数据的变化,并在最后检查(32H)= ,(31H)= , (30H)= 。

2、 编程实现逻辑运算:Q=(U *(V+W))+X.Y)+Z。设U~Z的位

地址为00H~05H.Q的位地址为07H。《实际中U~Z可以是外部输入端口信号或软件设定的一些控制位》。 实习步骤:

(1)输入所编程序。

MOV C,01H 《单片机原理与应用》试题010 一、 填空题(共20分,每题4分) 1、我们使用的单片机试验箱型号是 。

2、输入文件后,按F2保存程序,此时文件扩展名是 。 3、提示装载完毕后,使用 命令进行反汇编 ,检查程序 O RL C,02H ANL C,00H

MOV F0,C ;暂存U*(V+W)的值

MOV C,03H ANL C,/04H ORL C,F0 ORL C,/05H

MOV 07H,C ; 保存结果 (2)部RAM20H单元(位地址00H~07H的位在20H单元)输入某个数据(注意此时各位的状态并做好记录)。

(3)单步或断点运行所编程序,逐步检查Cy及个数据的变化情况(注意检查时也按字节读出,再观察其相应位)。 (4)验证运行结果

(5)改变20H单元的置数,重做。

是否正确装入。

4、将30H单元的内容#67H送R1,用最少的指令实现,指令为: 。

5、弹出操作,使用 指令。 二、程序分析题(共20分,每题10分) 1、程序如下

2506H M5: MOV SP,#58H; 2509H MOV 10H,0FH; 250CH MOV 11H,#0BH; 250FH ACALL XHD; 2511H MOV 20H,11H 2514H M5A: SJMP M5A XHD: PUSH 10H PUSH 11H POP 10H POP 11H

RET

问:(1)执行POP10H后堆栈内容?

(1) 将下列程序输入到实习装置 参考程序

START:MOV A,M

XRL A,N MOV B,A MOV A,O ORL A,P ANL A,B MOV Z,A

(2) 在M—P(30H—33H单元)装入待进行逻辑运算的数据

(自设)。

(3) 单步或带断点运行该段程序。

(4) 运行过程中注意检查程序的变化,并在最后验证(Z)

是否与理论值相符。

2、 设从内存BLOCK单元开始存放一 无符号数的数据块,其长度为LEN。试找出其最小数,并存入MIN单元。 (1)输入所编程序。

COMP: MOV A,#0FFH ;置比较的初始值

MOV R2,#LEN ;置数据块长度

MOV R1,#BLOCK ;置地址指

LOOP: CLR C

SUBB A,@R1 ;比较 JC NEXT ;若小,

则恢复原值

MOV A,@R1 SJMP NEXT1

NEXT: ADD A,@R1

NEXT1: INC R1 ;若大,则取下个数比较

DJNZ : DJNZ R2,LOOP

MOV MN ,A ;存最小数 SJMP $

(2)确定好数据块的起始地址和长度,并在相应的内部RAM单元存入数据,同时作好记录。

(3)单步或断点运行程序,注意循环次数是否等于数据块长度。

(4)观察PC,A和计数单元的变化并作好记录。

(5)验证运行结果。

《单片机原理与应用》试题011答案 四、 填空题(共20分,每题4分)

1、开启微机电源,在软件所在目录键入 MD51 命令,选择对应串

口号,进入集成操作软件环境。

2、对源文件进行汇编,生成浮动目标文件,文件扩展名是 .R03。 3、用B命令设置断点。

4、将立即数3052H送数据指针DPTR,使用MOV DPTR,#3052H指令。 5、两寄存器交换数据,使用XCH A,R4指令。 二、程序分析题(共20分,每题10分) 1、程序存储器空间表格如下:

MOV 30H,A ;A4H?(30H)

END: SJMP END 答 执行程序后,(30H)=A4 2、分析程序段:

CLR C

MOV A,#91H

SUBB A,61H ;求60H内的BCD数的补数,9AH-24H=76H

ADD A,61H ;76H+72H=E8H 地址 2000H 2001H 2002H 20DA A ;CY=1、A=48H

03H ... MOV 62H,A

内容 3FH 06H 5BH 4F 解 根据9AH=99=1的特殊性,该程序功能为单字节B

H ... CD数减法运算,即完成的是(61H)-(60H)?(62H)。

已知:片内RAM的20H中为01H,执行下列程序后(30

所以运行后,(62H)=48H,意即72-24=48

H)=?

MOV A,20H ;01H?A

四、 编程题(共60分,每题30分)

INC A ;01H+1

a) 编程实现下列逻辑运算Z=(M+N)*(O+P)。设M,N,O,P为片内

=02H?A

RAM30H—33H单元,输出结果单元Z地址为34H。

MOV DPTR,#2000H ;2000H

?DPTR

(5) 将下列程序输入到实习装置

MOVC A,@A+DPTR ;(2000H

参考程序

+2)=5BH?A

START:MOV A,M

CPL A ;5BH求反

XRL A,N

等于A4H

MOV B,A MOV A,O ORL A,P ANL A,B MOV Z,A

(6) 在M—P(30H—33H单元)装入待进行逻辑运算的数据

(自设)。

(7) 单步或带断点运行该段程序。

(8) 运行过程中注意检查程序的变化,并在最后验证(Z)

是否与理论值相符。

2、 设从内存BLOCK单元开始存放一 无符号数的数据块,其长度为LEN。试找出其最小数,并存入MIN单元。 (1)输入所编程序。

COMP: MOV A,#0FFH ;置比较的初始值

MOV R2,#LEN ;置数据块长度

MOV R1,#BLOCK ;置地址指针

LOOP: CLR C

SUBB A,@R1 ;比较 JC NEXT ;若小,

则恢复原值

MOV A,@R1 SJMP NEXT1

NEXT: ADD A,@R1

NEXT1: INC R1 ;若大,则取下个数比较

DJNZ : DJNZ R2,LOOP

MOV MN ,A ;存最小数 SJMP $

(2)确定好数据块的起始地址和长度,并在相应的内部RAM单元存入数据,同时作好记录。

(3)单步或断点运行程序,注意循环次数是否等于数据块长度。

(4)观察PC,A和计数单元的变化并作好记录。

(5)验证运行结果。

《单片机原理与应用》试题012 一、填空题(共20分,每题4分)

1、开启微机电源,在软件所在目录键入MD51命令,选择对应串口号,进入集成操作软件环境,如果光标不响应回车命令,按 键即可。

2、对源文件汇编无误后,自动生成相应的 文件。 3、用 命令来连续运行程序。

4、外部RAM与 累加器A间数据传送,使用 指令。

5、两寄存器交换数据,使用 命令。

二、程序分析题(共20分,每题10分)

1、(R0)=4BH,(A)=84H,片内RAM(4BH)=7FH,(4BH)=20H MOV A,@R0 ;7FH?A MOV @R0,40,40H ;20H?4BH MOV 40H,A ;7FH?40H MOV R0,#35H

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

2、设(R0)=7EH,DPTR=10FEH,片内RAM 7FH和7FH两单元的内容分别是FFH和38H,请写出下列程序段的每条指令的执行结果。 INC @R0 INC R0 INC @R0 INC DPTR INC DPTR INC DPTR

三、编程题(共60分,每题30分)

1、 比较存放在ONE,TWO,TRE三个单元的无符号数,并将小数存放在20H单元中。 (1) 输入程序 参考程序 MOV A,ONE CJNE A,TWO,RR RR: JC SS

MOV A,TWO CJNE A,TRE,TT TT: JC WW

SJMP UU SS: CJNE A,TRE,VV VV: JC WW UU: MOV A,TRE WW: MOV 20H,A

(2) 在ONE,TWO,和TRE三个内部RAM

(3) 单步运行,注意PC变化情况,同时检查Cy (4) 检查20H单元的内容,检验是否为最小值 (5) 修改ONE

2、 设在单片机内部RAM中从STR单元开始存放有一数据块,该数

据块以#00H结束,试统计其中为#0FFH的单元个数并存入NUM单元。

(1)输入所编程序。

COUNT: CLR A ;清计数单元 MOV R0,#STR ;置地址指针 LOOP: CJNE #0FFH,LOOP1;数据为#0FFH则计数单元加1

INC A LOOP1: INC R0

CJNE @R0,#000H,LOOP;数据块取完?

MOV NUM A ;存统计结果

SJMP $

(2)确定好数据块的起始地址,同时在相应的内部RAM单元建立好数据块(此数据块以#00H结束,并使其中若干个单元的内容为#0FFH),同时作好记录。

(3)单步或断点运行程序,注意循环跳出循环时刻。 (4)观察并记录PC,A和计数单元的变化情况。 (5)验证运行结果。

《单片机原理与应用》试题012答案

一、 填空题(共20分,每题4分)

1、开启微机电源,在软件所在目录键入MD51命令,选择对应串口号,进入集成操作软件环境,如果光标不响应回车命令,按 复位键即可。

2、对源文件汇编无误后,自动生成相应的 .LST文件。 3、用GB命令来连续运行程序。

4、外部RAM与 累加器A间数据传送,使用MOVX @DPTR,A指令。 5、两寄存器交换数据,使用 命令。

二、 程序分析题(共20分,每题10分)

1、(R0)=4BH,(A)=84H,片内RAM(4BH)=7FH,(4BH)=20H MOV A,@R0 ;7FH?A MOV @R0,40,40H ;20H?4BH MOV 40H,A ;7FH?40H MOV R0,#35H

问执行和程序后,R0、A和4BH、40H单元内容的变化如何? 答 程序执行后(R0)=35H,(A)7FH,(4BH)=20H,(40H)=7FH.

2、设(R0)=7EH,DPTR=10FEH,片内RAM 7FH和7FH两单元的内容分别是FFH和38H,请写出下列程序段的每条指令的执行结果。 INC @R0 INC R0 INC @R0

本文来源:https://www.bwwdw.com/article/rp47.html

Top