单片机题库复习资料考试满分必备

更新时间:2023-09-23 21:26:01 阅读量: IT计算机 文档下载

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

一、填空

1.计算机中常用的码制有原码,反码和 补码 。 2.十进制数29的二进制表示为 00011101 。

3.十进制数-29的8位补码表示为 11100011 。补码=反码+1 4.单片微型计算机由CPU,存储器和 I/O口 三部分组成。 5.若不使用MCS-51片内存储器引脚EA必须接 地 。 6.微处理器CPU由寄存器,控制器和 运算器 三部分组成。

7.当MCS-51引脚ALE信号有效时,表示从P0口稳定的送出了 低八位 地址。 8. MCS-51的P0口作为输出端口时,每位能驱动 8 个SL型TTL负载。 9. MCS-51有4个并行I/O口,其中 P1,P2,P3是准双向口,所以有输出转输入是必须先写入“1”。 10. MCS-51的堆栈是软件填写堆栈指针临时在 内部 数据存储器内开辟的区域。 11. MCS-51中凡字节地址能被 8 整除的特殊功能寄存器均能位寻址。

12. MCS-51系统中,当PSEN信号有效时,表示CPU要从外部程序 存储器读取信息。 13.当使用8751且 EA=1,程序存储器地址小于 8KB 时,访问的是片内ROM。 14. MCS-51特殊功能寄存器只能采用 直接 寻址方式。

15. MCS-51有4组工作寄存器,它们的地址范围是 00H-1FH 。

16. MCS-51片内20H~2FH范围内的数据存储器,即可以字节寻址又可以 位 寻址。 17.若用传送指令访问MCS-51的程序存储器,它的操作码助记符应为 MOVC 。 18.访问MCS-51片内RAM应该使用的传送指令的助记符是 MOV 。 19.当MCS-51使用间接寻址方式访问片内RAM高128B时,会产生 错误 。 20.设计8031系统时, P2 口不能用作一般I/O口。 21. MCS-51可扩展片外RAM 64 KB,但当外扩I/O口后,其外部RAM寻址空间将 减小 。 22.计算机的系统总线有地址总线,控制总线和 数据 总线。 23.输入输出设备是计算机与外部世界交换信息的 。 24.指令是通知计算机完成某中操作的 。

25.汇编语言中可以使用伪指令,他们不是真正的指令,只是用来 。 26. MCS-51串行接口有4种工作方式,这可以在初始化程序中用软件填写 SCON 特殊功能寄存器加以选择。 27.当使用慢速外设时,最佳的传送方式是 中断 。 28. MCS-51在外扩ROM,RAM或I/O时,它的地址总线是 P2,P0 。 29.当定时器T0工作在方式3时,要占用定时器T1的TR1和 TF1 两个控制位。 30. MCS-51有5个中断源,有2个中断优先级,优先级由软件填写特殊功能寄存器 IP 加以选择。

31.累加器(A)=80H,执行完指令ADD A,#83H后,进位位C= 1 。 32.执行ANL A,#0FH指令后,累加器A的高4位= 0 。 33. JZ e的操作码地址为1000H,e=20H,它的转移目的地址为 1022H 。 34. JBC 00H,E操作码的地址为2000H,e=70H,它的转移目的地址为 2073H 。 35.累加器(A)=7EH,(20H)=#04H,MCS-51执行完ADD A,20H指令后,PSW.0= 0 。 36. MOV PSW,#10H是将MCS-51的工作寄存器置为第 2 组。 37.指令DJNZ R7,e操作码所在地址为3000H,e=EFH,则它的转移目的地址为2FF1H 。 38. ORL A,#0F0H是将A的高4位置1,而低4位 不变 。

39. SJMP e的指令操作码地址为0050H,e=65H,那么它的转移目的地址为 00B7H 。 40.设DPTR=2000H,(A)=80H,则MOVC A,@A+DPTR的操作数的实际地址为2080H 。

41.十进制数-47用8位二进制补码表示为 11010001 。 42. -19D的二进制补码表示为 EDH 。

43.计算机中最常用的字符信息编码是 ASCII码 。 44.要串口为10位UART,工作方式应选用为 方式1 。 45.用串口扩并口时,串行接口工作方式应选为方式 方式0 。

46.在串行通信中,有数据传送方向 全双工 ,半双工 ,单工 三种方式。 47. PC复位后为0000H 。

48.一个机器周期= 12 节拍,一个机器周期=12个振荡周期,一个振荡周期=1节拍。 49. 80C51含 4 KB掩膜ROM。

50. 80C51在物理上有 个独立的寄存器空间。 51.外部中断INT0 入口地址为0003H 。 52. PSW中RS1 RS0=10H是,R2的地址为 12H 。 53.一个机器周期= 6 个状态周期,振荡脉冲2分频后产生的时钟信号的周期定义为状态周期。

54. 8751是EPROM型,内含 8 KB EPROM。

55. 89C51是FLASH ROM型,内含 KB FLASH ROM 56. MCS-51中T0中断服务程序入口地址为 000BH。 57. PSW中RS1 RS0=11H,R2的地址为 1AH 。

58.执行当前指令后,PC内容为 下一条指令的地址 。 59. 12根地址线可寻址 4 KB存储单元。 60.写8255A控制字时,需将A1,A0置为 1 1 。 61. MOV C,20H源寻址方式为 位 寻址。 62. INC 不 影响CY位。 63.指令LCALL 37B0H,首地址在2000H,所完成的操作是 2003H 入栈,37B0H→PC。 64.MOVX A,@DPTR源操作数寻址方式为 间接寻址 。 65.ORG 1000H LCALL 4000H ORG 4000H

ADD A,R2 执行完LCALL后(PC)= 4000H 。 66.80C51中断有 2 个优先级。 67.80C51中断嵌套最多 2 级。

68.微机与外设间传送数据有 、 和 三种方式。 69.外中断请求标志位是 IE0 和 IE1 。 70.当80C51的RST引脚上保持 2 个机器周期以上的低电平时,80C51即发生复位。 71.当单片机的型号为8031/8032时,其芯片引线EA一定要接 低 电平。 72.MCS-51机扩展片外I/O口占用片外 数据 存储器的地址的空间。 73.MCS-51单片机访问片外存储器时,利用 ALE 信号锁存来自 P0 口的低8位地址信号。 74.12根地址线可选 4K 个存储单元,32KB存储单元需要 15 根地址线。 75.三态缓冲寄存器输出端的“三态”是指 高电平 态、 低电平 态和 高阻 态。 76.74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选中 8 块芯片。 77.74LS273通常用来做简单 接口扩展;而74LS244则常用来作简单 并行 接口扩展。 78.A/D转换器的作用是将 模拟 量转为 数字 量;D/A转换器的作用是将 量转为 量。

79.A/D转换器的三个最重要指标是 、 和 。

80.从输入模拟量到输出稳定得数字量的时间间隔是A/D转换器的技术指标之一,称为 。 81.若某8位D/A转换器的输出满刻度电压为+5V,则该D/A转换器的分辨率为 5/255 V。 82.MCS-51单片机片内RAM的寄存器区共有 32 个单元,分为 4 组寄存器,每组 8 个单元,以 R0-R7 作为寄存器名称。 83.单片机系统复位后,(PSW)=00H,因此片内RAM寄存区的当前寄存器是第 0 组,8个寄存器的单元地址为 00H ~ 07H 。 84通过堆栈操作实现子程序调用,首先要把 PC 的内容入栈,以进行断点保护。调用返回时在进行出栈操作,把保护的断点弹回 PC 。 85.一台计算机的指令系统就是它所能执行的 指令 集合。

86.以助记符形式表示的计算机指令就是它的 汇编(助记符) 语言。 87.在直接寻址方式中,只能使用 8 位二进制数作为直接地址,因此其寻址对象只限于内部RAM 。 88.在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的 地址 。

89.在变址寻址方式中,以 A 作变址寄存器,以 PC 或 DPTR 作基址寄存器。 90.假定累加器A的内容为30H,执行指令: 1000H:MOVC A,@A+PC

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

91假定DPTR的内容为8100H,累加器A的内容为40H,执行下列指令: MOVC A,@A+DPTR 后,送入A的程序存储器 8140H 单元的内容 . 92 假定(SP)=60H, (ACC)=30H,(B)=70H, 执行下列命令: PUSH ACC PUSH B

后,SP的内容为 62H , 61H的单元的内容为 30H ,62单元 的内容为 70H .

93假定(SP)=62H, (61)H=30H, (62)H=70H, 执行下列指令: POP DPH POP DPL

后,DPTR的内容为 7030H , SP的内容为 60H .

94 假定(A)=85H, (R0)=20H, (20H)=OAFH.执行指令: ADD A,@R0

后,累加器A的内容为 34H , CY的内容为 1 , AC的内容为 1 , OV的内容为 1 . 95假定(A)=85H, (20H)=OFFH, (CY)=1, 执行指令: ADDC A, 20H

后,累加器A的内容为 85H , CY的内容为 1 , AC的内容为 1 , OV的内容为 0 . 96 假定(A)=0FFH, (R3)=0FH, (30H)=0F0H, (R0)=40H, (40H)=00H.执行指令: INC A A=00H INC R3 R3=10H INC 30H 30H=F1H

INC @R0 40H=01H

后,累加器A的内容为 00H , R3的内容为 10H , 30H的内容为 F1H , 40H的内容为 01H .

97 在MCS—51中PC和DPTR都用于提供地址, 但PC是为了访问 程序 存储器提供地址,而DPTR是为访问 数据 存储器提供地址. 98 在位操作中,能起到与字节操作中累加器的作用的是 CY . 99 累加器A中存放着一个其值小于或等于127的8位无符号数, CY清“0”后执行RLC A指令, 则A中数变为原来的 2 倍. 100 计算机的数据传送有两种方式,即 并行 方式和 串行 方式,其中具有成本低特点的是 串行 数据传送. 101 异步串行数据通信的桢格式由 起始 位, 数据 位, 第九位(校验) 位和 停止 位组成.

102 异步串行数据通信有 全双 , 单双 和 单工 共三种传送方向形式. 103 使用定时器T1设置串行通信的波特率时, 应把定时器T1设定为工作模式 2 ,即 定时 模式. 104 假定(A)=56H, (R5)=67H. 执行命令: ADD A, R5 DA

后,累加器A的内容为 23H , CY的内容为 1 . 105 假定(A)=0FH, (R7)=19H, (30H)=00H, (R1)=40H, (40H)=0FFH. 执行指令 DEC A DEC R7

DEC 30H FFH DEC @R1

后, 累加器A的内容为 , R7的内容为 , 30H的内容 为 , 40H的内容为 FEH . 106 假定(A)=50H, (B)=0A0H. 执行指令: MUL AB

后,寄存器B的内容为 32H , 累加器A的内容为 00 , CY的内容为 0 , OV的内容为 1 . 假定(A)=50H,(B)=12H..执行命令: DIV AB

后,累加器A的内容为__0AH___,寄存器B的内容为__08H__,CY的内容为__0____, OV 的内容为__0_____. 假定(A)=0 5 .执行命令: SWAP A

后,累加器A的内容为__50___. 109执行如下指令序列; MOV C,P1.0 ANL C,P1.1 ANL C,/P1.2 MOV P3.0,C

后,所实现的逻辑关系为_________.

110假定addr11=00100000000B,标号qwe的地址1030hH.执行命令:

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

111假定标号qaz 的地址为0100 ,标号qwe值为0123 (即跳转的目标地址为0123 ).应执行命 : Qaz;SJMP qwe

该指令的相对便移量(既指令的第二字节)为___21H___.

112 DPTR是MCS-51中唯一一个16位寄存器,在程序中常用来作为MOVC指令的询问程序存储器的__基地址___使用.

113请填好下段程序内有关每条指令结果的注释中之空白. MOV A.PSW ;(A)=10H

MOV B,A ;(B)=___10___H MOV PSW,A ;(PSW)=_____H

114堆栈设在_内部数据___存储区,程序存放在__程序_存储区,外部I/O接口设在_外RAM__存储区,中断服务程序存放在__程序_存储区.

115若单片机使用频率为6MHz的晶振,那么状态周期为_______,机器周期为____________ 指令周期为_________.

116 复位时A= , PSW= , SP= 07H , P0—P3= FFH 。 117 执行下列程序段后CY= 1 , OV= 0 , A= 94H 。 MOV A, #56H ADD A, #74H ADD A, A

118 设SP=60H,片内RAM的(30H)=24H,(31H)=10H,在下列程序注释中填写执行结果。

PUSH 30H ;SP= 61H , (SP)= 24H PUSH 31H ;SP= 62H , (SP)= 10H POP DPL;SP= 61H , DPL= 10H POP DPH;SP= 60H , DPH= 24H MOV A, #00H MOVX @DPTR, A

最后的执行结果是 2410H=00H . 119 80C51复位后

CPU从 0000 H单元开始执行程序。

SP的内容为 07 H,第一个压入堆栈的数据将位于 内部 RAM的 08 H单元。 SBUF的内容为 xxH 。 ORL A,#4指令执行后,PSW寄存器的内容将等于 01 H。 120. 8031

其EA引脚必须接 地 。

可作通用I/O的至少8条I/O线,最多还可加上P 口的8条I/O线。

P0 口作地址/数据总线,传送地址码的区 低 8位;P2 口作地址总线,传送地址码的 高 8位。

MOVX指令用来对 外 RAM进行读写操作。 121 存储器组织

8052片内RAM有 256 字节。 若(PSW)=18H,则有效R0的地址为 18H 。 对8051来说,MOV A,@R0指令中的R0之取范围最大可为 7F H。 位地址7FH还可写成 2FH.7 。

122 定时器和串行接口 80C51的 T1 作串行接口方式1和方式3的波特率发生器。 8052除可用 T1 外,尚可用 T2 作其串行口方式1和方式3的波特率发生器。 若8031AH的fosc=12MHz,则其两个定时器对重复频率高于 4 MHz的外部事件是不能正确计数的。

在定时器T0运作模式3下,TH0溢出时, TF1 标志将被硬件1去请求中断。 在运作模式3下,欲使TH0使停止运作,应执行一条CLR TR1 指令。 在多机通信中,若字符传送率为100B/s,则波特率等于 1100 。 在多机通信中,主机发送从机地址呼叫从机时,其TB8位为 1 ;各从机此前必须将其 SCON中的REN位和 SM2 位设置为1。 123 中断系统 INT0和INT1的中断标志分别是 IE0 和 IE1 。 T0 和 T1两引脚也可作外部中断输入引脚,这时 TMOD寄存器中的C/T位应当为 1 。 上题中,若M1 M0两位置成10,则计数值应当是(TH)=(TL)= FF H。 RETI 指令以及任何访问 IE 和 IP 寄存器的指令执行过后, CPU 不能马上响应中断。 124 指令系统 在R0 初值为00的情况下DJNZ R0,$ 指令将循环执行 256 次 欲使 口的低4位输出0而高4位不变,应执行一条 指令。 欲使 口的高4位输出1而低4位不边,应执行一条 指令。 DIV AB指令执行后,OV标志为1,则执行指令前(B)= 00 H。 MUL AB指令执行后,OV标志为1,则(B)≠ 00 H。 MCS—51的两条查表指令是 MOVC A,@A+PC 和 MOVC A,@A+DPTR 。

二、单项选择题

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

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

(A)PC=000H (B)SP=00H (C)SBUF=00H (D)(30H)=00H 3 要用传送指令访问MCS—51片外RAM,它的指令操作码助记符应是(B) (A)MOV (B)MOVX (C)MOVC (D)以上都行 4 下面哪一种传送方式适用于电路简单且时序已知的外设( )

(A)条件传送 (B)无条件传送 (C)DMA (D)中断 5 ORG 2000H LCALL 3000H ORG 3000H

RET 左边程序执行完 RET指令后,PC=( C ) (A)2000H (B) 3000h (C)2003H (D)3003H

6 要使MCS—51能够响应定时器T1中断,串行接口中断,它的中断允许寄存器IE的内部应是( A )

(A)98H (B)84H (C)42H (D)22H 7 6264芯片是(B )

(A) PRROM (B)RAM (C)Flash ROM (D)EPROM 8 MCS—51串行接口扩展并行I/O口时,串行接口工作方式应选择( A )

(A)方式0 (B)方式1 (C)方式2 (D)方式3 9 用MCS—51响应中断时,下列哪种操作不会发生( A )

(A)保护现场 (B)保护PC (C)找到中断入口 (D)保护PC转入中断入口 10 JNZ rel指令的寻址方式是( C )

(A)立即寻址 (B) 寄存器寻址 (C) 相对寻址 (D)位寻址 11 执行LCALL 4000H指令时,MCS—51完成的操作是( D ) (A)保护PC (B)4000H→PC (C)保护现场 (D)PC+3入栈,4000H→PC 12 下面哪条指令产生WR信号( D )

(A)MOVAX A,@DPTR (B)MOVC A, @A+PC (C) MOVC A,@A+DPTR (D)MOVX @DPTR,A 13 若某寄存器芯片的地址线为12根,那么它的存储容量为( C ) (A)1KB (B)2KB (C) 4KB (D)5kB

14 要想测量INTO引脚上的一个正脉冲宽度,那么特殊功能寄存器TMOD的内容应为( A ) (A)09H (B)87H (C)00H (D)80H 15 PSW=18H时,则当前工作寄存器是( D ) (A)0组 (B)1组 (C)2组 (D)3组

16 MOVX A,@DPTR指令中源操作数的寻址方式是( B ) (A)寄存器寻址 (B)寄存器间接寻址 (C)直接寻址 (D)立即寻址 17 MCS-51有中断源( A )

(A)5个 (B)2个 (C)3个 (D)6个 18 MCS-51上电复位后,SP的内容应为( B )

(A)00H (B)07H (C)60H (D)70H 19 ORG 0003H LJMP 2000H ORG 000BH LJMP 3000H

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

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

(A)TCON (B)PCON (C)SCON (D)TMOD 21 执行PUSH ACC指令, MCS-51完成的操作是( A )

(A)SP+1→SP (ACC)→(SP) (B) (ACC) →(SP) SP-1→SP (C) SP-1→SP (ACC)→(SP) (D) (ACC)→(SP) SP+1→SP 22 P1口的每一位能驱动( B )

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

(A)下一条指令的地址 (B)当前正在执行的指令 (C) 当前正在爱执行指令的地址 (D)下一条要执行的指令

24 8031是( C )

(A)CPU (B)微处理器 (C)单片微机 (D)控制器 25 要把P0口的高4位变0,低4位不变,应使用指令( D ) (A)ORL P0, #0FH (B) ORL P0, #0F0H (C) ANL P0, #0F0H (D) ANL P0, #0FH 26 下面哪种是输出设备( A )

(A)打印机 (B)纸带读出机 (C)键盘 (D) A/D转换器 27 所谓CPU是指( A )

(A)运算器与控制器 (B)运算器与存储器 (C)输入输出设备 (D)控制器与存储器

28 LCALL指令操作码地址四2000H,执行完相应的子程序返回指令后,PC=( D ) (A)2000H (B)2001H (C)2002H (D)2003H 29 用MCS—51执行完MOV A,#08H后,PSW的哪一位被置位( D ) (A) C (B)F0 (C)OV (D)P

30 计算机字使用中断方式与外界交换信息时,保护现场的工作应该是( C )

(A)由CPU自己完成 (B)在中断响应中完成 (C)应由中断服务程序完成 (D)在主程序中完成 31.关于MCS—51的堆栈操作,正确的说话是( C )

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

32. 下面哪条指令将MCS—51的工作寄存其置成3区( B ) (A) MOV PSW, #13H (B) MOV PSW, #18H

(C)SETB PSW.4 CLR PSW.3 (D) SETB PSW.3 CLR PSW.4

33.若MCS—51中断源都编程为同级,当它们同时申请中断时CPU首先响应( A ) (A) 外0 (B) 外1 (C) T1 (D)T0

34.执行MOVX A,@DPTR指令时, MCS—51产生的控制信号是( /RD ) (A) (B)ALE (C) (D) 35. MCS—51的相对转移指令的最大负距离为( B ).

(A) 2KB (B)128B (C)127B (D)256B 38.MOV C,#00H 的操作方式是( A )

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

39.当执行MOVX @DPTR,A指令时, MCS—51产生下面哪一个控制信号( /WR (A) (B) (C)ALE 40. ORG 0000H AJMP 0040H ORG 0040H

MOV SP , #00H 当执行完左边的程序后,PC的值是( D ) (A) 0040H (B)0041H (C)0042H (D)0043H

41. MCS—51外扩ROM、RAM和I/O口 时,它的数据总线是( A ) (A)P0 (B)P1 (C)P2 (D)P3

42. 当CPU响应串行接口中断时,程序应转移到( C ) (A)0003H (B)0013H (C)0023H (D)0033H 43.当ALE信号有效时,表示( B )

)

(A)从ROM读取数据 (B)从P0口可靠地送出地址低8位 (C)从P0口送出数据 (D)从RAM中读取数据 44. MCS—51复位时,表示( D )

(A) (20H)=00H (B) SP=00H (C) SBUF=00H (D) TH0=00H 45.执行MOV IE,#83H后, MCS—51将响应的中断是( B )

(A) 1个 (B)2个 (C) 3个 (D) 4个 46 MCS—51的中断源全部编程为同级时,优先级最高的是( 外0 ) (A) (B) TI (C)串行接口 (D) 47.下列哪种设备不是输入设备( C )

(A) A/D转换器 (B)键盘 (C)打印机 (D)扫描仪 48.外部中断1固定对应的中断入口地址为( C )

(A)0003H (B)000BH (C)0013H (D)001BH

49.各中断源发出的中断请求信号,都会标记在MCS—51系统中的( B ) (A) TMOD (B)TCON/SCON (C)IE (D)IP

50. MCS—51单片机可分为两个中断优先极别.各中断源的优先级别设定是利用寄存器( B )

(A) IE (B)IP (C) TCON (D)SCON 51. MCS—51的并行I/O口的读取方法:一种是读引脚,还有一种是( A ) (A)读锁存器 (B)读数据 (C)读A累加器 (D)读CPU 52. MCS—51的并行I/O口一改一写操作,是针对该口的( D )

(A)引脚 (B)片选信号 (C)地址线 (D)内部锁存器 53.以下指令中,属于单纯读引脚的指令是( C )

(A)MOV P1, A (B) ORL P1, #0FH

(C)MOV C, P1.5 (D)DJNZ P1, short-lable 54.指令AJMP的跳转范围是( C )

(A)256 KB (B)1KB (C)2KB (D)64KB 55.以下运算中对溢出标志OV没有影响或不受OV影响的运算是( A ) (A)逻辑运算 (B)符号数加减运算 (C)乘法运算 (D)除法运算

56.假定设置堆栈指针SP的值为37H,在进行子程序调用时把断点 地址进栈保护后,SP的值为( D )

(A)36H (B)37H (C)38H (D)39H 57.对程序存储器的读操作,只能使用( D )

(A)MOV指令 (B)PUSH指令 (C)MOVX指令 (D)MOVC指令 58.必须进十进制调整的十进制运算是( C )

(A)只有加法和减法 (B)有乘法的除法 (C)只有加法 (D)只有减法 59.执行返回指令时,返回的断点是( C )

(A)调用指令的首地址 (B)调用指令的末地址 (C)调用指令下一条指令的首地址 (D)返回指令的末地址 60.各中断源发出的中断请求信号,都会标记在MCS—51系统中( B) (A)TMOD (B)TCON/SCON (C)IE (D)IP (D)

三、判断并改错。(下列命题你认为正确的在括号内打“√”,错误的打“×”,并说明理由。) 1.我们所说的计算机实质上是计算机的硬件系统与软件系统的总称。 ( ) 2. MCS—51的相对转移指令的最大负跳距是128B. ( ) 3. MCS—51的程序存储器只是用来存放程序的。 ( x ) 4. MCS—51的五个中断源优先极相同。 ( X )

5.要进行多机通信, MCS—51串行接口的工作方式应选为方式1. ( X ) 6. MCS—51上的电复位时,SBUF=00H. ( X ) 7. MCS—51外部中断0的入口地址是003H. ( )

8.TMOD中的GATE=1时,表示由两个信号控制定时器的起停. ( ) 9. MCS—51的时钟最高频率是18MHZ. ( X ) 10.使用可编程接口必须初始化. ( )

11.当MCS—51上电复位时,堆栈指针SP=00H. ( X ) 12. MCS—51外扩I/O与外RAM是统一编址的. ( )

13.使用8751且 EA=1时,仍可外扩64KB的程序存储器. ( ) 14.8155的复位引脚可与89C51的复位引脚直接相联. ( ) 15. MCS—51是微处理器. ( x )

16. MCS—51的串行接口是全双工的. ( )

17.PC存放的是当前正在执行的命令. ( X )

18. MCS—51的特殊功能寄存器分部在60H—80H地址范围内( X ) 19. MCS—51系统可以没有复位电路. ( X )

20.在MCS—51系统中,一个机器周期等于1.5us. ( X )

21.调用子程序指令(如CALL)及返回指令(如RET)与堆栈有关但与PC无关. ( X ) 22.片内RAM与外部设备统一编址的,需要专门 的输入/输出指令. ( X ) 23.锁存器,三态缓冲器等简单芯片中没有命令寄存和状态寄存等功能. ( ) 24 MOV @R0,P1在任何情况下都是一条能正确执行的MCS—51指令. ( X )

25.欲将片外RAM中3057H单元的内容传送给A,判断下列指令或程序段正误. ( ) ⑴ MOVX A,3057H ( X ) ⑵ MOV DPTR,#3057H ( ) MOVX A,@DPTR

⑶ MOV P2,#30H ( ) MOV R0,#57H MOVX A,@R0

⑷ MOV P2,#30H ( X ) MOV R2,#57H MOVX A,@R2

26.欲将SFR中的PSW寄存器内容读入A,判断下列指令正误. ⑴ MOV A,PSW ( ) ⑵MOV A,0D0H ( ) ⑶ MOV R0, #0D0H ⑷PUSH PSW MOV A,@R0 ( X ) POP ACC ( ) 27.判断下列指令正误.

⑴ MOV 28H,@R4 (X ) ⑵ MOV E0H,@R0 ( ) ⑶ MOV R1,#90H, MOV A,@R1 ( X )

⑷ INC DPTR ( ) ⑸ DEC DPTR ( X ) ⑹ CLR R0 ( X )

28.判断下列指令正误.

MOV @R1,#80H ( ) MOV R7,@R1 ( X ) MOV 20H @R0 ( ) MOV R1,#0100H ( X ) CPL R4 ( X ) SETB R7.0 ( X ) MOV 20H,21H ( ) ORL A ,R5 ( )

ANL R1,#0FH ( X ) XRL P1,#31H ( )

MOVX A ,2000H ( X ) MOV 20H @DPTR ( X ) MOV A,DPTR ( X ) MOV R1 , R7 ( X ) PUSH DPTR ( X ) POP 30H ( ) MOVC A, @R1 ( X ) MOVC A , @DPTR ( X ) MOVX @DPTR ,#50H ( X ) RLC B ( X )

ADDC A,C ( X ) MOVC @R1,A ( X ) 四、简答题

27.单片机对中断优先极的处理原则是什么?

28.80C51的外部中断有哪两种触发方式?它们对触发脉冲或电平有什么要求?

29.单片机怎样管理中断?怎样放开和禁止中断?怎样设置优先级?

30.80C51单片机定时器/计数器作定时和计数作用时,其计数脉冲分别由谁提供?

31. 80C51单片机定时器/计数器的门控信号GATE设置为1时,定时器如何启动?

32. 80C51单片机内设有几个定时器/计数器?它们由哪些特殊功能寄存器组成?

34.什么是单片机的机器周期,状态周期,振荡周期的指令周期?他们之间有什么关系?

35.当定时器T0工作于模式3时,如何使运行中的定时器T1停下来?

39.程序状态寄存器PSW的作用是什么?常用状态有哪些位?作用是什么?

五、计算题

1.X1=﹣1111101,X2 =﹢110,求X1-X2=? 2.求 68的补码以及补码C9H的真值?

3.(A)=3BH,执行ANL A,#9EH指令后,(A)=? (CY)=?

4.JNZ rel为2B指令,放于1308H,转移目标地址是134AH,求偏移量 rel=? 5.若(A)=C3H,(R0)=AAH,执行 ADD A,R0后,(A)=?,(CY)=? (OV)=? (AC)=?

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

7.SJMP 0E7H为2B指令,放于F010H,目的地址=? 8.晶振fosc=6MHz,T0工作在模式1,最大定时=? 六、阅读并分析程序题

1.位地址为M、N、Y,程序如下: MOV C,M ANL C, MOV Y,C MOV C,M ANL C,N ORL C,Y MOV Y, C 求程序表达式。 2.程序如下:

2506H M5: MOV SP, #58H; 2509H MOV 10H, #0FH; 250CH MOV 11H, #0BH;

(SP)+1→SP,(PC0—PC7)→(SP) 250FH ACCLL XHD;(PC)+2, (SP)+1→SP,(PC8—PC15)→(SP) Addr0—10→pc 2511H 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)=? 3.程序存储器空间表格如下: 地址 2000H 2001H 2002H 2203H …

内容 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 END: SJMP END

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

问执行程序后,R0、A和4BH单元内容的变化如何? 5设(R0)=20H,R1=25H,(20H)=80H,(21)H=90H,(22H)=A0H,(25H)=A0 H,(26H)=6FH,(27H)=76H,下列程序执行后,结果如何? CLR C

MOV R2,#3 LOOP: MOV A,@R0 ADDC A,@R1 MOV @R0,A INC R0 INC R1

DJNZ R2, LOOP JNC NEXT

MOV @R0,#01H SJMP $ NEXT: DEC R0 SJMP $

(20H)= ,(21H)= ,(22H)= ,(23H)= , CY= ,A= ,R0= ,R1= . 6.阅读下列程序并回答问题. CLR C

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

MOV 62H, A

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

(2)已知初值(60H)=23H,(61H)=61H,请问运行后:(62H)= ? 7.解读下列程序,然后填写有关寄存器内容. (1) MOV R1,#48H

MOV 48H,#51H CJNE @R1,#51H,00H JNC NEXT1 MOV A, #0FFH SJMP NEXT2 NEXT1: MOV A,#0AAH NEXT2: SJMP NEXT2 累加器 A=( ) (2) MOV A,#0FBH MOV PSW,#10H ADD A, #7FH

PSW=00,执行完上述程序段后,将PSW各位状态填入下表: PSW CY AC F0 RS1 RS0 OV F1 P 8.分析程序段: CLR C

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

MOV 62H, A (1)程序执行何种操作?

(2)若已知初值:(60H)=24H、(61H)=72H,则运行后,(62H)= . 9.设片内RAM中(59H)=50H,执行下列程序段. MOV A,59H MOV R0,A MOV A,#0 MOV @R0,A MOV A,#25H MOV 51H,A MOV 52H,#70H

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

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

编程题:

1.程序实现c=a2+b2。设a、b均小于10,a存在31H单元,b存在32H单元,把c存入33H单元。

2.软件延时方法实现变调振荡报警:用P1.0端口输出1KHz和2KHz的变调音频,每隔1s交替变换一次。

3.使用定时器中断方法设计一个秒闪电路,让LED显示器每秒钟有400ms点亮。假定晶振频率为12MHz,画接口图并编写程序。 4.求8个数的平均值,这8个数以表格形式存放在从table开始的单元中。

5.在外部RAM首地址为table的数据表中,有10个字节的数据。编程将每个字节的最高位无条件地置“1”。

6.单片机用内部定时方法产生频率为100KHz等宽矩形波,假定单片机的晶振频率为12MHz,请编写程序。

7.假定单片机晶振频率为12MHz,要求每隔100ms,从外部RAM以data开始的数据区传送一个数据到P1口输出,共传送100个数据。要求以两个定时器串行定时方法实现。

8.用定时器T1定时,使P1.2端电平每隔1min变反一次,晶振为12MHz。

9.设定时器/计数器T0为定时工作方式,并工作在方式1,通过P1.0引脚输出一周期为2ms的方波,已知晶振频率为6MHZ,试编制程序。 10.若80C51单片机的fosc=6MHZ,请利用定时器T0定时中断的方法,使P1.0输出如图所示的矩形脉冲。

11.80C51单片机P1端口上,经驱动器接有8只发光二极管,若晶振频率为6MHZ,试编写程序,使这8只发光管每隔2s由P1.0~P1.7输出高电平循环发光。

12. 80C51单片机接口DAC0832D/A变换器,试设计电路并编制程序,使输出如图所示的波形。

一、填空题 1. 2. 3. 4.

80C51的Po口作为输出端口时,每位能驱动 8 个SL型TTL负载。 当80C51引脚 ALE 信号有效时,表示从Po口稳定地送出了低8位地址。

一个机器周期等于 6 个状态周期,振荡脉冲2分频后产生的时钟信号的周期定义为状态周期。 在80C51单片机内部RAM中,字节地址范围是20H ~ 2FH的区域称为 位寻址区 ,而字节地址范围是30H ~ 7FH的一段区域称为 通用RAM区 。 5.

80C51系列单片机内部数据存储器,即内RAM中位寻址区的地址范围是 20H~2FH 工作寄存器区的地址范围是 00H~1FH 。内R0M中寻址区的地址范围是 0000H~0FFFH 。 6. 7. 8. 9. 80C51有 4 个并行I\\O口,其中P0~P3是准双向口,所以由输出转输入时必须先写入 1 。 80C51串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器 SCON 加以选择。

若不使用80C51片内存器引脚 EA 必须接地。 80C51的堆栈是软件填写堆栈指针临时在 片内RAM 内开辟的区域。 10. 80C51有4组工作寄存器,它们的地址范围是 00H~1FH 。

11. 80C51片内 20H~2FH 范围内的数据存储器,既可以字节寻址又可以位寻址。 12. 计算机的系统总线有 数据总线、地址总线、控制总线 。 13. 80C51在物理有 4 个独立的存储空间。 14. 程序状态标志字寄存器PSW中的PSW.7的含义是 进/借位标志 ;PSW.0的含义是 奇偶标志位 。 15. 通常单片机上电复位时PC= 0000H SP=07H,通用寄存器采用第0组,这一组寄存器的地

址范围是从00H ~07H。

16. 单片机的存储器设计采用哈佛结构,它的特点是将程序存储器空间和数据存储器空间在物理上 截然

分开,分别寻址 。 17. 单片机系统的复位方式有上电复位和 手动按键 复位两种。

18. 80C51单片机的内部硬件结构包括了: 运算器 、 控制器 、 存储器 、和 寄存器 以及并行I/O口、串行口、中断控制系统、时钟电路、位处理器等部件,这些部件通过 总线 相连接。 19. 80C51单片机的P0~P3口均是 准双向 I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建系统的 地址线 和 数据线 。 20. 80C51单片机的时钟电路包括两部分内容,即芯片内的 振荡器 和芯片外跨接的 晶振

与 电容 。 二、判断题 1.

程序存储器和数据存储器的作用不同,程序存储器一般用存放数据表格和程序,而数据存储器一般用来存放数据。 ( 对 ) 2. 3. 4. 5. 6. 7. 8. 9.

80C51的特殊功能寄存器分布在60H~80H(80~FFH)地址范围内。 ( 错 ) 8051单片机的P0口既可以做数据口线又可以做为地址口线。 ( 对 ) 8051单片机的P2口只能用作通用I/O 口。

( 错 )

在80C51系统中,一个机器周期等于1.5μs。 ( 错 ) 若不使用80C51片内存器引脚EA必须接地。 ( 对 ) 80C51的程序存储器只是用来存放程序的。 ( 错 ) 当80C51上电复位时,堆栈指针SP=00H。(07H) ( 错 ) 80C51外扩I/O口与外RAM是统一编址的。 ( 错 )

10. 80C51系统可以没有复位电路。 ( 错 ) 三、选择题 1. 2.

80C51系统中,若晶振频率屡8MHz,一个机器周期等于( A ) μs。 80C51的时钟最高频率是 ( A )。

(A) 1.5 (B) 3 (C) 1 (D) 0.5 (A) 12MHz (B) 6 MHz (C) 8 MHz (D) 10 MHz 3.

80C51的并行I/O口读-改-写操作,是针对该口的( D )。

(A)引脚 (B)片选信号 (C)地址线 (D)内部锁存器 4.

80C51单片机外部有40个引脚,其中,地址锁存允许控制信号引脚是( A )。

(B)PSEN

(C)EA

(D)RST

(A)ALE 5.

P1口的每一位能驱动( B )

(A)2个TTL低电平负载有 (B)4个TTL低电平负载 (C)8个TTL低电平负载有 (D)10个TTL低电平负载 6. 区分片外程序存储器和数据存储器的最可靠方法是( D )。 (A)看其芯片型号是RAM还是ROM。 (B)看其位于地址范围的低端还是高端。 (C)看其离80C51芯片的远近。 (D)看其是被RD还是被PSEN信号连接。 7.

80C51单片机外扩存储器芯片时,4个I/O口中用作地址总线的是( A )。

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

(D)P2口 8.

内部RAM中的位寻址区定义的位是给( D )

(A) 位操作准备的 (B) 移位操作准备的 (C) 控制转移操作准备的 (D) 以上都对 9.

以下运算中对溢出标志OV没有影响或不受OV影响的运算是( A )

A) 逻辑运算 (B) 符号数加减法运算 (C) 乘法运算 (D) 除法运算

10. 单片机程序存储器的寻址范围是由程序计数器PC的位数决定的,80C5l的PC为16位,因此其寻址范

围是( B )

(A) 4 KB (B) 64 KB (C) 8 KB (D) 128 KB 11. PC的值是(C)

(A) 当前指令前一条指令的地址 (B) 当前正在执行指令的地址 (C) 下一条指令的地址 (D) 控制器中指令寄存器的地址 12. 在80C5l中,可使用的堆栈最大深度为 (C)

(A) 80个单元 (B) 32个单元 (C) 128个单元 (D) 8个单元 13. 在80C5l单片机的运算电路中,不能为ALU提供数据的是(D) (A) 累加器A (B) 暂存器 (C) 寄存器B (D) 状态寄存器PSW 14. 在80C5l中( C ) (A) 具有独立的专用的地址 (B) 由P0口和P1口的口线作地址线

(C) 由P0口和P2口的口线作地址线 (D) 由P1口和P2口的口线作地址线 一、填空题

21. 80C51的Po口作为输出端口时,每位能驱动 8 个SL型TTL负载。 22. 当80C51引脚 ALE 信号有效时,表示从Po口稳定地送出了低8位地址。

23. 一个机器周期等于 6 个状态周期,振荡脉冲2分频后产生的时钟信号的周期定义为状态周期。 24. 在80C51单片机内部RAM中,字节地址范围是20H ~ 2FH的区域称为 位寻址去 ,而字节地址范围

是30H ~ 7FH的一段区域称为 通用RAM区 。

25. 80C51系列单片机内部数据存储器,即内RAM中位寻址区的地址范围是 00H~FFH 工作寄存器区

的地址范围是 00H~1FH 。内R0M中寻址区的地址范围是 0000H~0FFFH 。

26. 80C51有 4 个并行I\\O口,其中P0~P3是准双向口,所以由输出转输入时必须先写入

1 。

27. 80C51串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器 SCON

加以选择。

28. 若不使用80C51片内存器引脚 EA 必须接地。

29. 80C51的堆栈是软件填写堆栈指针临时在 片内RAM 内开辟的区域。 30. 80C51有4组工作寄存器,它们的地址范围是 00H~1FH 。

31. 80C51片内 20H~2FH 范围内的数据存储器,既可以字节寻址又可以位寻址。 32. 计算机的系统总线有 数据总线、地址总线、控制总线 。 33. 80C51含 掩膜ROM。

34. 80C51在物理有 4 个独立的存储空间。 35. 程序状态标志字寄存器PSW中的PSW.7的含义是 进/借位标志 ;PSW.0的含义是 奇偶标志位 。

36. 设计8031系统时, P0 口不能用作一般I\\O口。

37. 通常单片机上电复位时PC= 0000H SP=07H,通用寄存器采用第0组,这一组寄存器的地

址范围是从00H ~07H。

38. 单片机的存储器设计采用哈佛结构,它的特点是将程序存储器空间和数据存储器空间在物理上 截然

分开,分别寻址 。 39. 单片机系统的复位方式有上电复位和 手动按键 复位两种。 40. 80C51单片机内部RAM的寄存器区共有 32 个单元,分为 4 组寄存器,每组 8

个单元,以 R 作为寄存器名称。

41. 80C51单片机的内部硬件结构包括了: 运算器 、 控制器 、 存储器 、和 寄存器 以及并行

I/O口、串行口、中断控制系统、时钟电路、位处理器等部件,这些部件通过 总线 相连接。 42. 80C51单片机的P0~P3口均是 准双向 I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建系统的 地址线 和 数据线 。 43. 单片机系统复位后,(PSW)=00H,因此内部RAM寄存区的当前寄存器是第 0 组,8个寄存器的

单元地址为 00 H ~ 07H 。

44. 80C51单片机的时钟电路包括两部分内容,即芯片内的 振荡器 和芯片外跨接的 晶振

与 电容 。

45. 在80C51中,位处理器的数据位存储空间是由 的可寻址位和内部RAM为寻址区的

个位。

46. 使用8031单片机要将EA引脚接低电平,因为其内部无 存储器 ,8031片外可直接寻址程序存储器空间达64 KB,数据存储器空间达64 KB。 二、判断题

11. 程序存储器和数据存储器的作用不同,程序存储器一般用存放数据表格和程序,而数据存储器一般用

来存放数据。 ( 对 )

12. 若不使用80C51片内存器引脚EA必须接地。 ( 对 ) 13. 80C51的时钟最高频率是18MHz。(12M) ( 错 ) 三、选择题

15. 80C51的并行I/O口读-改-写操作,是针对该口的( D )。

(A)引脚 (B)片选信号 (C)地址线 (D)内部锁存器

16. 当80C51不执行外部数据存储器读/写操作时,ALE的频率为单片机时钟频率的( C )。 (A)1/1 (B)1/4 (C)1/6 (D)1/12 17. 以下运算中对溢出标志OV没有影响或不受OV影响的运算是( A ) A) 逻辑运算 (B) 符号数加减法运算 (C) 乘法运算 (D) 除法运算

18. 单片机程序存储器的寻址范围是由程序计数器PC的位数决定的,80C5l的PC为16位,因此其寻址范

围是( B )

(A) 4 KB (B) 64 KB (C) 8 KB (D) 128 KB 三、设计题

1、试用C程序编写,用P0口作为通用I/O输出口,控制8个发光二极管从左到右依次点亮,再依次熄灭,电路图如图所示。

#include unsigned char i; unsigned char temp; unsigned char a,b;

void delay(void) //循环间隔时间 {

unsigned char m,n,s; for(m=20;m>0;m--)

极接电源,P1.0输出低电平灯亮;(2)使用定时器T0工作在定时状态,方式1工作,定时时间10ms;(3)使用软件计数,要实现1.5s的定时,计数次数为:1500/10=150次。

程序: #include

sbit L1=P1^0;

unsigned char count;

void main() { TMOD=0x01; TH0=(65536-10000*6/12)/256; TL0=(65536-10000*6/12)%6; ET0=1; EA=1; count=0; TR0=1; while (1) ; }

void time0() interrupt 1 {

TH0=(65536-10000*6/12)/256; TL0=(65536-10000*6/12)%6; count++; if (count==150) { count=0; L1=~L1; }

}

4、控制一个LED灯每1秒钟闪烁一次,即亮0.5秒,灭0.5秒。 要求:(1)使用定时器T0定时,定时器T1计数,采用硬件定时+硬件计数的方式实现。(2)系统时钟频率为12MHz。 解:(1)使用一个LED灯,阴极接P1.0,阳极接电源,P1.0输出低电平灯亮;(2)使

用定时器T0工作在定时状态,方式2工作,定时时间100us;(3)使用定时器T1工作在计数状态,方式0工作,要实现0.5s的定时,计数次数为:0.5s/100us=5000次。

程序: #include

sbit L1=P1^0;

void main() {

TMOD=0x42;

}

TH1=(8192-5000)/32; TL1=(8192-5000)2; TH0=256-100*12/12; TL0=256-100*12/12; ET0=1; ET1=1; EA=1; TR0=1; TR1=1; while (1) ;

void time0() interrupt 1 { T1=0; T1=1; }

void time1() interrupt 3 {

TH1=(8192-5000)/32; TL1=(8192-5000)2; L1=~L1;

}

5、控制八个LED灯每2秒钟闪烁一次,即亮1秒,灭1秒。 要求:(1)使用定时器T1,采用硬件定时+软件计数的方式实现。(2)系统时钟频率为12MHz。

解:说明:(1)使用八个LED灯,阴极接P1端口,阳极接电源,P1端口输出低电平灯

亮;(2)使用定时器T1工作在定时状态,方式1工作,定时时间10ms;(3)使用软件计数,要实现1s的定时,计数次数为:1000/10=100次。

程序: #include

unsigned char count;

void main() {

TMOD=0x10; TH1=(65536-10000*12/12)/256; TL1=(65536-10000*12/12)%6; ET1=1; EA=1; count=0; P1=0xff;

}

TR1=1; while (1) ;

void time1() interrupt 3 {

TH1=(65536-10000*12/12)/256; TL1=(65536-10000*12/12)%6; count++; if (count==100) { count=0; P1=~P1; }

}

6、使用定时器控制跑马灯,每0.5秒切换一次,从低位到高位变化。 要求:(1)使用定时器T1定时,定时器T0计数,采用硬件定时+硬件计数的方式实现。(2)系统时钟频率为12MHz。 解:说明:(1)使用八个LED灯,阴极接P1端口,阳极接电源,P1端口输出低电平灯

亮;(2)使用定时器T1工作在定时状态,方式2工作,定时时间100us;(3)使用定时器T0工作在计数状态,方式0工作,要实现0.5s的定时,计数次数为:0.5s/100us=5000次。(4)跑马灯功能采用二进制移位方式实现。

程序: #include

unsigned char k;

void main() {

TMOD=0x24; TH0=(8192-5000)/32; TL0=(8192-5000)2; TH1=256-100*12/12; TL1=256-100*12/12; ET0=1; ET1=1; EA=1; k=0x01; TR0=1; TR1=1; while (1) ;

}

void time0() interrupt 1 {

} TH0=(8192-5000)/32; TL0=(8192-5000)2; P1=~k; k=k<<1;

if (k==0) k=0x01;

void time1() interrupt 3 { T0=0; T0=1; }

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值。

?1x?0?0x?0???1x?0Y=?

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

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

一、填空题(每空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。

单片机模拟试卷2

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

1.单片机内有组成微机的主要功能部件 CPU 、 存储器 和 I/O接口 。 2.堆栈的特性是 先进后出,自动+1 ,8051的堆栈一般开辟在 30H-7FH ,其堆栈指针是 SP 。 3.RS232C是 串行通信 总线标准。 4.8255是 通用可编程并行 接口。 5.MCS-51有一个全双工的 异 步串行口,有 4 种工作方式。 二、简述题(每题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 (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分)

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

一、填空题(每空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分)

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

(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 $

单片机模拟试卷3

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

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

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

a) RAM b)ROM c)寄存器 d)CPU

3.已知某数的BCD码为0111 0101 0100 0010 则其表示的十进制数值为( )

a) 7542H b) 7542 c) 75.42H d) 75.42 4.下列指令中不影响标志位CY的指令有( )。

a)ADD A,20H b)CLR c)RRC A d)INC A 5.CPU主要的组成部部分为( ) a)运算器、控制器 b)加法器、寄存器

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

a) 16 b)4 c)8 d)准16 7.8031复位后,PC与SP的值为( )

a )0000H,00H b) 0000H,07H c) 0003H,07H d)0800H,00H 8.当需要从MCS-51单片机程序存储器取数据时,采用的指令为( )。 a)MOV A, @R1 b)MOVC A, @A + DPTR

c)MOVX A, @ R0 d)MOVX A, @ DPTR

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

a) PUSH R2 b) ADD R0,A c) MOVX

A @DPTR d) MOV @R0,A

二、填空题(每空1分,共30分)

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

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

3.半导体存储器分成两大类 和 ,其中 具有易失性,常用于存储 。 4.求十进制数-102的补码(以2位16进制数表示),该补码为 。

5.PC存放_______________,具有___________特性。在8051中决定程序执行顺序的是PC还是DPTR? 它是______位? (是,不是)SFG? 6.123= B= H。

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

8.MCS-51的堆栈只可设置在 ,其最大容量为 ,存取数据的原则是 。堆栈寄存器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 。

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

1.MCS51的中断系统有几个中断源?几个中断优先级?中断优先级是如何控制的?在出现同级中断申请时,CPU按什么顺序响应(按由高级到低级的顺序写出各个中断源)?各个中断源的入口地址是多少? 2.已知单片机系统晶振频率为6MHz,若要求定时值为10ms时,定时器T0工作在方式1时,定时器T0对应的初值是多少?TMOD的值是多少?TH0=?TL0=?(写出步骤)

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

单片机模拟试卷3答案

一、选择题(每题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跳转空间最大可达到642KB 。

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。

单片机练习题

一、填空题

1、为区别不同的进制,在数的末尾用字母表示,二进制为 B ,十六进制为 H ,十进制为 D 。

2、8位二进制组成一个 字节 ,它是单片机中数的基本单位。

3、硬件技术中三种基本的无源器件是 电阻 、 电容 、 电感 。

4、电感对电流的作用效果可以总结为:阻 交流 、通 直流 ,交流电流频率越高,电感对电流的阻抗效应越 强 。

5、电容对电流的作用效果可以总结为:隔 直流 、通 交流 ,交流电流频率越高,电容对电流的阻抗效应越 弱 。

6、晶体二极管的一个最重要特征是 单向导电 。

7、微机硬件的五大部件是: 运算器 、 控制器 、 存储器 、 输入设备 和 输出设备 。 8、单片机又称为 微控制器(MCU) 。

9、单片机构成的四要素是 CPU 、 ROM 、 RAM 和 片上外设 ,它们相互之间通过 总线 连接。

10、8051单片机是 8 位CPU。

11、 时钟 电路用于产生单片机工作所需要的时钟信号。

12、 时钟周期(振荡周期) 是指为单片机提供时钟信号的振荡源的周期。

13、 机器周期 是指单片机完成某种基本操作所需要的时间,它由 12 个时钟周期组成。 14、假设单片机时钟频率f=12MHz,则时钟周期为 1/12 us,机器周期为 1 us。

15、单片机的存储系统包含三大部分: 程序存储器(ROM) 、 数据存储器(RAM) 和 特殊功能寄存器(SFR) 。

16、从物理地址空间来看,MCS-51单片机有四个存储器地址空间:即 片内ROM 和 片外ROM 以

及 片内RAM 和 片外RAM 。

17、从逻辑上看,单片机存储空间可分为三个部分: 64KB程序存储器、 256B数据存储器 和 64KB数据存储器 。

18、在单片机的引脚中,XTAL1和XTAL2用于连接 时钟 电路。 19、在单片机的引脚中,RESET用于连接 复位 电路。

20、单片机的端口有: P0 、 P1 、 P2 、 P3 。其中 P0 端口外接电路时要加上拉电阻,

P3 端口主要使用其第二功能。

21、单片机复位后,PC= 0000H ,SP= 07H ,P0~P3= 0FFH 。 22、51单片机引脚P3.2的第二功能是: INT0外部中断0输入端 ,P3.3的第二功能是: INT1外部中断1输入端 ,P3.4的第二功能是: T0外部计数脉冲输入端0 ,P3.5的第二功能是: T1外部计数脉冲输入端1 。 23、单片机 最小系统 是能让单片机工作起来的一个最基本的组成电路。 24、C语言程序的基本结构有: 顺序结构 、 选择结构 和 循环结构 。

25、堆栈是一种数据结构,是一片按照“ 先进后出 ”原则工作的连续存储区域。

26、堆栈的一端固定,称为 栈底 ,另一端激活,称为 栈顶 ,并用堆栈指针寄存器 SP 存放栈顶地址,总是指向 栈顶 。

27、发光二极管LED与单片机连接时,一般 阴 极接端口, 阳 极接电源。这种连接方式下,端口输出 电平可点亮LED。

28、设变量k=0x08;则执行C语句:k=k<<1;后,k= 0x10 。 29、设变量k=0x08;则执行C语句:k=k>>1;后,k= 0x04 。

30、数码管分为 共阴极 和 共阳极 两种结构。若字型码最低位对应a段,最高位对应h段,要显示数字“2”,这两种结构对应的字型码分别为:0x 5b 和0x a4 。

31、数码管分为 共阴极 和 共阳极 两种结构。若字型码最低位对应a段,最高位对应h段,要显示数字“6”,这两种结构对应的字型码分别为:0x 7d 和0x 82 。

32、数码管分为 共阴极 和 共阳极 两种结构。若字型码最低位对应a段,最高位对应h段,要显示数字“4”,这两种结构对应的字型码分别为:0x 66 和0x 99 。

33、根据LED数码管的硬件设计方法不同,数码管显示驱动方式分为: 静态方式 和 动态方式 。

34、数码管 静态 显示方式,每个数码管要占用一个端口; 动态 显示方式采用动态扫描方式显示。

35、在数码管的动态显示方式中, 段选 端输出字型码, 片选 端选择数码管。 36、 非编码 键盘仅提供按键的开关工作状态,其键码由软件确定。

37、按照键盘与单片机的连接方式分,可把键盘分为: 独立式 键盘和 矩阵式 键盘。 38、 独立式 键盘每一个按键占用一根端口线。

39、 矩阵式 键盘采用扫描方式检测按键闭合情况及识别确定键码。 40、当测试到有键闭合后,需进行 去抖动 处理。 41、单片机的中断优先级有 2 级。 42、在单片机中断系统中,设置中断允许使用寄存器 IE ,设置中断优先级使用寄存器 IP ,设置外部中断的触发方式使用寄存器 TCON 。 43、在单片机中断系统中,当发生中断请求时,将影响的寄存器是 TCON 和 SCON 。 44、计算机中断系统有两种不同类型的中断:一类称为 非屏蔽 中断,另一类称为 可屏蔽 中断。单片机的中断源均为 可屏蔽 中断。 45、在单片机中断系统中,要允许定时器T0中断,除设置 ET0 =1之外,还要将总开关 EA =1。

46、如果几个同一优先级的中断源同时向CPU申请中断,则51单片机中断源中 外部中断0 的优先级最高。 47、如果几个同一优先级的中断源同时向CPU申请中断,则51单片机中断源中 串行中断 的优先级最低。

48、在单片机中断系统中,定时器T1的中断号是: 3 。 49、在单片机中断系统中,外部中断1的中断号是: 2 。

50、中断处理过程可分为: 中断请求 、 中断响应 、 中断服务 和 中断返回 。 51、编写中断应用程序大致包括两大部分: 中断初始化 和 中断服务程序 。 52、MCS-51单片机内部有 2 个 16 位的可编程定时器/计数器。

53、定时器T0和T1可通过编程作为 定时器 使用,也可通过编程作为 计数器 使用。 54、定时器T0可分为两个8位专用寄存器: TH0 和 TL0 ;T1可分为 TH1 和 TL1 。 55、定时器T0和T1作为计数器使用时,是对 外部 脉冲计数;作为定时器使用时,是对

内部机器周期 脉冲计数。

56、设置单片机定时器的工作方式,使用寄存器 TMOD 。

57、将51单片机的定时器/计数器作为13位计数器使用,其工作方式为: 方式0 。 58、将51单片机的定时器/计数器作为16位计数器使用,其工作方式为: 方式1 。

59、将51单片机的定时器/计数器作为8位计数器使用,并带初值自动装入功能,其工作方式为: 方式2 。

60、当系统时钟频率为12MHz时,51单片机的定时器/计数器的方式0的最大定时时间是

8.192 ms,方式1的最大定时时间是 65.536 ms,方式2和方式3的最大定时时间是 256 us。

61、当系统时钟频率为12MHz时,51单片机的定时器/计数器的方式0的最大计数值是

8192 ,方式1的最大计数值是 65536 ,方式2和方式3的最大计数值是 256 。 62、使用定时器T0定时、工作方式2;定时器T1计数,工作方式1,则TMOD=0x 52 。 63、点阵式LED的连接线分为行线和列线,要点亮LED,行线是 高 电平有效,列线是 低 电平有效。

二、选择题(将正确答案填在空白处,每小题均只有一个正确答案) 1、MCS-51单片机是 A CPU。

(A)8位 (B)准16位 (C)16位 (D)4位 2、MCS-51内部数据RAM中,特殊功能寄存器SFR占 B 字节。 (A)512 (B)128 (C)64K (D)256 3、MCS-51单片机内部程序ROM的容量是 C 字节。

(A)64K (B)128 (C)4K (D)256 4、MCS-51单片机外部ROM和RAM均可扩展到 D 字节。 (A)4K (B)128 (C)256 (D)64K

5、MCS-51单片机中,一个机器周期等于 A 个时钟周期。 (A)12 (B)4 (C)2 (D)8 6、MCS-51单片机中,有 D 个端口。

(A)1 (B)2 (C)3 (D)4 7、MCS-51有 B 个 位的定时器/计数器。

(A)1,8 (B)2,16 (C)1,16 (D)2,8 8、MCS-51单片机中,有 B 个中断源,其中外部中断有 个。

(A)6,2 (B)5,2 (C)6,3 (D)5,3

9、在MCS-51单片机中,要设置外部中断1的触发方式为电平触发,应执行语句: A 。 (A)IT1=0; (B)IT1=1; (C)IE1=0; (D)IE1=1; 10、在MCS-51单片机中,要设置外部中断0的触发方式为边沿触发,应执行语句: B 。 (A)IT0=0; (B)IT0=1; (C)IE0=0; (D)IE0=1; 11、下列说法正确的是: C 。

(A)各中断源发出的中断请求信号,都会标记在MCS-51系统中的IE寄存器中。 (B)各中断源发出的中断请求信号,都会标记在MCS-51系统中的TMOD寄存器中。 (C)各中断源发出的中断请求信号,都会标记在MCS-51系统中的TCON与SCON寄存器中。

(D)各中断源发出的中断请求信号,都会标记在MCS-51系统中的IP寄存器中。 12、要设置中断的优先级,应使用寄存器 B 。

(A)IE (B)IP (C)TCON (D)SCON 13、要设置中断的允许,应使用寄存器 A 。

(A)IE (B)IP (C)TCON (D)SCON 14、要启动定时器/计数器,应使用寄存器 C 。

(A)IE (B)IP (C)TCON (D)SCON 15、要设置定时器/计数器的工作方式,应使用寄存器 D 。

(A)IE (B)IP (C)TCON (D)TMOD 16、要设置外部中断1为高优先级,应执行语句: A 。

(A)PX1=1; (B)PX1=0; (C)PT1=1; (D)PT1=0; 17、要设置定时器T0为低优先级,应执行语句: D 。

(A)PX0=1; (B)PX0=0; (C)PT0=1; (D)PT0=0;

18、在单片机中断系统中,如果几个同一优先级的中断源同时向CPU申请中断,则以下中断源中

A 的优先级最高。

(A)外部中断0 (B)定时器T0 (C)外部中断1 (D)定时器T1

19、在单片机中断系统中,如果几个同一优先级的中断源同时向CPU申请中断,则以下中断源中

D 的优先级最低。

(A)外部中断0 (B)定时器T0 (C)外部中断1 (D)定时器T1 20、在单片机中断系统中,定时器T1的中断号是: C 。 (A)1 (B)2 (C)3 (D)4 21、在单片机中断系统中,外部中断0的中断号是: A 。 (A)0 (B)1 (C)2 (D)3 22、在单片机中断系统中,定时器T0的中断号是: A 。 (A)1 (B)2 (C)3 (D)4 23、在单片机中断系统中,外部中断1的中断号是: B 。 (A)1 (B)2 (C)3 (D)4

24、将51单片机的定时器/计数器作为13位计数器使用,其工作方式为: A 。 (A)方式0 (B)方式1 (C)方式2 (D)方式3

25、24、将51单片机的定时器/计数器作为16位计数器使用,其工作方式为: B 。 (A)方式0 (B)方式1 (C)方式2 (D)方式3

26、24、将51单片机的定时器/计数器作为8位计数器使用,并带初值自动装入功能,其工作方式为: C 。

(A)方式0 (B)方式1 (C)方式2 (D)方式3 27、下列说法错误的是: A 。

(A)同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。 (B)同一级别的中断请求按时间的先后顺序依次响应。 (C)同级中断不能嵌套。

(D)低优先级中断请求不能中断高优先级中断请求,但是高优先级中断请求能中断低优先级中断请求。

28、下列关于TH0和TL0的叙述正确的是: B 。 (A)TH0和TL0必须为相同的值。

(B)TH0寄存器存放计数值的高8位,TL0寄存器存放计数值的低8位。 (C)TH0寄存器存放计数值的低8位,TL0寄存器存放计数值的高8位。 (D)TH0和TL0均为16位寄存器。

29、在单片机中断系统中,若要将所有中断源均设置为低优先级,则中断优先级寄存器IP

的值为: B 。

(A)0x1f (B)0x00 (C)0x15 (D)0x0a

30、在单片机中断系统中,若要允许所有外部中断,禁止其他中断,则中断允许寄存器IE的值为: D 。

(A)0x0a (B)0x1a (C)0x15 (D)0x05

31、在单片机中断系统中,若要将所有中断源均设置为高优先级,则中断优先级寄存器IP

的值为: A 。

(A)0x1f (B)0x00 (C)0x15 (D)0x0a 32、在51单片机定时器编程中,若要启动定时器T0,应执行语句: C 。

(A)TF0=1; (B)TF0=0; (C)TR0=1; (D)TR0=0; 33、当系统时钟频率为6MHz时,51单片机的定时器/计数器的方式0的最大定时时间是 D us。

(A)32 (B)256 (C)8192 (D)16384

34、当系统时钟频率为6MHz时,51单片机的定时器/计数器的方式1的最大定时时间是 C us。

(A)256 (B)8192 (C)131072 (D)65536 35、在MCS-51定时器的工作方式中, B 的定时时间最长。 (A)方式0 (B)方式1 (C)方式2 (D)方式3

36、在MCS-51定时器的工作方式中, C 具有初值自动装入功能。 (A)方式0 (B)方式1 (C)方式2 (D)方式3

37、在MCS-51定时器的工作方式中, A 是作为13位计数器使用。 (A)方式0 (B)方式1 (C)方式2 (D)方式3

38、要使MCS-51中的定时器T1工作于计数、方式0;定时器T0工作于定时、方式1;则

TMOD应设置为: B 。

(A)0x04 (B)0x41 (C)0x14 (D)0x15

39、要使MCS-51中的定时器T1工作于计数、方式1;定时器T0工作于定时、方式2;则TMOD应设置为: A 。

(A)0x52 (B)0x15 (C)0x24 (D)0x25

40、要使MCS-51中的定时器T0工作于计数、方式1;定时器T1工作于定时、方式0;则

TMOD应设置为: D 。

(A)0x50 (B)0x41 (C)0x14 (D)0x05 三、计算题

1、将二进制数:10011101B转换为十进制。

10011101B=1*27+1*24+1*23+1*22+1*20=128+16+8+4+1=157 2、将二进制数:10100101B转换为十进制。 3、将二进制数:11001011B转换为十进制。 4、将二进制数:10110110B转换为十进制。 5、将二进制数:11011001B转换为十进制。 6、将十进制数:59转换为二进制。 59D=111011B

7、将十进制数:110转换为二进制。 8、将十进制数:78转换为二进制。 9、将十进制数:85转换为二进制。 85D=1010101B

10、将十进制数:107转换为二进制。 107D=1101011B

11、将二进制数:11000101B转换为十六进制。 11000101B=0C5H

12、将二进制数:00101101B转换为十六进制。 13、将二进制数:01111000B转换为十六进制。 01111000B=78H

14、将二进制数:10111010B转换为十六进制。 10111010B=0BAH

15、将二进制数:11101001B转换为十六进制。 11101001B=0E9H

16、将十六进制数:7CH转换为二进制。 7CH=01111100B

17、将十六进制数:4AH转换为二进制。 4AH=01001010B

18、将十六进制数:0D5H转换为二进制。 0D5H=11010101B

19、将十六进制数:0BFH转换为二进制。 0BFH=10111111B

20、将十六进制数:0E9H转换为二进制。

21、设X=10110010,Y=01101010,计算二进制与运算X·Y,二进制或运算X+Y。 X·Y=00100010B,X+Y=11111010B。

22、设X=10011110,Y=11001011,计算二进制与运算X·Y,二进制或运算X+Y。 X·Y=10001010B, X+Y=11011110 B。

23、设X=10001100,Y=00101011,计算二进制与运算X·Y,二进制或运算X+Y。 X·Y=00001000B,X+Y=10101111B。

24、设X=11010110,Y=01111110,计算二进制与运算X·Y,二进制或运算X+Y。 X·Y=01010110B,X+Y=11111110B。

25、设X=10001101,Y=10100111,计算二进制与运算X·Y,二进制或运算X+Y。 四、简答题

1、什么是单片机?

答:就是在一块芯片上集成了中央处理部件(CPU)、存储器(RAM、ROM)、定时器/

计数器和各种输入/输出(I/O)接口(如并行I/O口、串行I/O口和A/D转换器)等片上外设的微型计算机。

2、单片机构成的四个要素是什么?画出单片机结构简图。

答:单片机构成的四个要素是CPU、ROM、RAM、片上外设(IO口等), 互相之间通过总线连接。

3、单片机存储系统由几部分组成?画出单片机存储系统简图。 答:单片机存储系统由程序存储器(ROM)、数据存储器(RAM)、特

殊功能寄存器(SFR)三部分组成。

4、什么是单片机最小系统?画出单片机最小系统简图,并简述各部分功能。

答:单片机最小系统就是能让单片机工作起来的一个最基本的组成电路。电源:为单片机系统提供能源。复位电路:让单片机系统

能够实现初始化。时钟电路:为单片机系统提供时钟信号。EA接高电平:选择片内程序存储器。P0端口上拉电阻:提高P0端口的负载能力。

5、什么是中断?什么是中断源?MCS-51单片机的中断源有哪些?

答:中断是指计算机在执行某一程序的过程中,由于计算机系统内、外的某种原因,而必须中止原来程序的执行,转去执行相应的处理程序,待处理结束之后,再回来继续执行被中止的原程序的过程。

引起中断的原因,或者是能发出中断申请的来源,称为“中断源”。

MCS-51单片机的中断源有:(1)INT0:外部中断0中断请求,由P3.2脚输入。 (2)INT1:外部中断1中断请求,由P3.3脚输入。 (3) TF0:定时器T0溢出中断请求。 (4) TF1:定时器T1溢出中断请求。 (5) RI或TI:串行中断请求。 6、画出中断响应过程示意图。 答:

7、简述MCS-51单片机中断初始化的步骤。若规定外部

中断1为边沿触 发方式,高优先级,允许中断;试写出相关的初始化程序。 答:MCS-51单片机中断初始化的步骤:(1)初始化堆栈指针SP;(2)定义中断优先级;(3)

定义外部中断触发方式;(4)开放中断。初始化程序为: SP=0x60; PX1=1; IT1=1; EA=1; EX1=1; 8、简述MCS-51单片机中断初始化的步骤。若规定外部中断0为电平触发方式,低优先级,允许中断;试写出相关的初始化程序。 答:MCS-51单片机中断初始化的步骤:(1)初始化堆栈指针SP;(2)定义中断优先级;

(3)定义外部中断触发方式;(4)开放中断。初始化程序为:

SP=0x60; PX0=0; IT0=0; EA=1; EX0=1; 9、简述MCS-51单片机中断初始化的步骤。若规定外部中断0为边沿触发方式,高优先级,允许中断;外部中断1为电平触发方式,低优先级,允许中断;试写出相关的初始化程序。

答:MCS-51单片机中断初始化的步骤:(1)初始化堆栈指针SP;(2)定义中断优先级;

(3)定义外部中断触发方式;(4)开放中断。初始化程序为:

SP=0x60; PX0=1; PX1=0; IT0=1; IT1=0; EA=1; EX0=1;

EX1=1;

10、简述MCS-51单片机定时器初始化的步骤。设系统晶振频率为12MHz,若定时器T0

工作于方式0,作为定时器定时5ms;试写出相关的初始化程序。 答:MCS-51单片机定时器初始化的步骤:(1)确定工作方式——对TMOD赋值;(2)

预置定时或计数的初值——直接将初值写入TH0、TL0或TH1、TL1;(3)根据需要开启定时器/计数器中断——可以直接对IE寄存器赋值;(4)启动定时器/计数器工作——将TR0或TR1置“1”。初始化程序为:

TMOD=0x00; TH0=(8192-5000)/32; TL0=(8192-5000)2; EA=1; ET0=1; TR0=1;

11、简述MCS-51单片机定时器初始化的步骤。设系统晶振频率为6MHz,若定时器T1工

作于方式1,作为计数器计数4000次;试写出相关的初始化程序。 答:MCS-51单片机定时器初始化的步骤:(1)确定工作方式——对TMOD赋值;(2)

预置定时或计数的初值——直接将初值写入TH0、TL0或TH1、TL1;(3)根据需要开启定时器/计数器中断——可以直接对IE寄存器赋值;(4)启动定时器/计数器工作——将TR0或TR1置“1”。初始化程序为:

TMOD=0x50; TH1=(65536-4000)/256; TL1=(65536-4000)%6; EA=1; ET1=1; TR1=1;

12、简述MCS-51单片机定时器初始化的步骤。设系统晶振频率为6MHz,若定时器T0工

作于方式2,作为定时器定时200us;试写出相关的初始化程序。 答:MCS-51单片机定时器初始化的步骤:(1)确定工作方式——对TMOD赋值;(2)

预置定时或计数的初值——直接将初值写入TH0、TL0或TH1、TL1;(3)根据需要开启定时器/计数器中断——可以直接对IE寄存器赋值;(4)启动定时器/计数器工作——将TR0或TR1置“1”。初始化程序为:

TMOD=0x02; TH0=256-200*6/12; TL0=256-200*6/12; EA=1; ET0=1; TR0=1;

13、简述MCS-51单片机定时器初始化的步骤。设系统晶振频率为12MHz,若定时器T0

工作于方式1,作为计数器计数20000次;试写出相关的初始化程序。 答:MCS-51单片机定时器初始化的步骤:(1)确定工作方式——对TMOD赋值;(2)预置定时或计数的初值——直接将初值写入TH0、TL0或TH1、TL1;(3)根据需要开启定时器/计数器中断——可以直接对IE寄存器赋值;(4)启动定时器/计数器工作——将TR0或TR1置“1”。初始化程序为:

TMOD=0x05;

TH0=(65536-20000)/256; TL0=(65536-20000)%6; EA=1; ET0=1; TR0=1;

五、设计题(应包含画图、设计说明、程序)

1、使用按键控制一个LED灯闪烁,按一次亮,再按一次灭,周而复始。 要求:(1)使用外部中断1,中断实现。(2)在程序设计中必须考虑按键去抖动。 解:说明:(1)使用按键开关直接接P3.3,作为外部中断1的输入端,按键开关闭合为低电平,触发中断;(2)使用一个LED灯,阴极接P1.0,阳极接电源,P1.0输出低电平灯亮。(3)按键开关的去抖动使用软件延时实现。

程序: #include

sbit L1=P1^0; void delay10ms() {

unsigned char i,j; for (i=20;i>0;i--) for (j=250;j>0;j--) ;

}

void main() {

SP=0x60; IT1=1; EA=1; EX1=1; L1=1; while (1) ;

}

void int_1() interrupt 2 {

delay10ms(); if (INT1==0) { L1=~L1; }

}

2、使用按键控制八个LED灯实现跑马灯功 能,按一次,灯的显示切换一次,周而复始。 要求:(1)使用外部中断0,中断实现。(2)在程序设计中必须考虑按键去抖动。

解:说明:(1)使用按键开关直接接P3.2,作为外部中断0的输入端,按键开关闭合为低电平,触发中断;(2)使用八个LED 灯,阴极接P1端口,阳极接电源,P1端口输出低电平灯亮。(3)按键开关的去抖动使用软件延时实现。(4)跑马灯的功能使用二进制移位方式实现。

程序: #include

unsigned

char k;

void delay10ms() {

unsigned char i,j; for (i=20;i>0;i--) for (j=250;j>0;j--) ;

}

void main() {

SP=0x60; IT0=1; EA=1; EX0=1; k=0x01; while (1) ;

}

void int_0() interrupt 0 {

delay10ms(); if (INT0==0) { P1=~k; k=k<<1; if (k==0) k=0x01; }

}

3、控制一个LED灯每3秒钟闪烁一次,即亮1.5秒,灭1.5秒。 要求:(1)使用定时器T0,采用硬件定时+软件计数的方式实现。(2)系统时钟频率为6MHz。 解:说明:(1)使用一个LED灯,阴极接P1.0,阳

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

Top