1、一、选择题1.单片机复位后,SPPCI/O口的内容为A.SP = 60H PC = 00H P0 = P1 = P2 = P3 = FFHB.SP = 00H PC = 0000H P0 = P1 = P2 = P3 = 00HC.SP = 07H PC = 0000H P0 = P1 = P2 = P3 = FFHD.SP = 00H PC = 00H P0 = P1 = P2 = P3 = 00H答案:1.C 2.8051有四个工作寄存器区,由PSW状态字中的RS1和RS0两位的状态来决定,单片机复位后,若执行 SETB RS0 指令,此时只能使用区的工作寄存器。A.区 B.区 C.区 D
2、.区答案:2.A3、ATMEL的89C51驱动能力最强的并行端口为。A.P0B.P1C.P2D.P3答案:3.A 4、 读片外部数据存储器时,不起作用的信号是。A./RD B. /WE C./PSEN D.ALE答案:4.C5、利用KEIL软件进行仿真调试时,在执行调用指令时,调试可跟踪到子程序内部并逐条执行子程序内部的各条指令。A暂停B调试C单步D连续运行答案:5.C6.已知:MOV A,#28H MOV R0,#20H MOV R0,A ANLA,#0FH ORLA,#80H XRLA,R0 执行结果A的内容为A.A0H B.28H C.08H D.88H答案:6.A7.在进行BCD码运算
3、时,紧跟加法运算指令后面的指令必须是指令。A.ADD B.DA A C.ADDC D.由实际程序确定答案:7.B 8.在MCS-51中,需要外加电路实现中断撤除的是:A.定时中断B.脉冲方式的外部中断C.外部串行中断D.电平方式的外部中断答案:8.D 9、关于定时器,若振荡频率为12 MHz,在方式1下最大定时时间为A.8.192ms B.65.536 ms C. 0.256ms D.16.384ms答案:9.B10、控制串行口工作方式的寄存器是A.TCON B.PCON C.SCON D.TMOD答案:10.C11、开机复位后,CPU使用的是第0组工作寄存器,地址范围是。A.00H-10H
4、B.08H-0FH C.10H-1FH D.00H-07H 答案:11.D 12、对MCS-51系列单片机P0口用作输出时,应外接。A.上拉电阻 B.二极管 C.三极管 D.下拉电阻答案:12.A 13、在进行BCD码运算时,紧跟加法运算指令后面的指令必须是指令。A.ADD B.DA A C.ADDC D.由实际程序确定答案:13.B14、进位标志CY在中。 A.累加器B.算逻运算部件ALUC.程序状态字寄存器PSWD.DPTR答案:14.C15、MCS-51单片机有七种寻址方式, MOVX A,A+DPTR 属于寻址。 A间接 B变址 C相对 D直接答案:5.B16、有如下程序段: MOV
5、31H ,#24H ; MOV A , 31H ; SWAP A ; ANL A , #0F0H ; 执行结果是 A.(A)=24HB.(A)=42HC.(A)=40HD.(A)=00H答案:16.C17、某种存储器芯片是8KB*2片,那么它的地址线根线是( )A、11根 B、12根 C、13根 D、14根答案:17.C 18、发送一次串行数据的操作不包含的是( )。A.CLR TI B. MOV A,SBUF C. JNB TI,$ D.MOV SBUF,A答案:18.B19、8位 LED 显示器采用动态显示方式时(不加锁存器),至少需要提供的 I/O 线总数是: ( ) A. 16B. 2
6、0C.18D. 6答案:19.A20、堆栈数据的进出原则是A.先进先出 B.进入不出 C.后进后出 D.先进后出 答案:20.D21、要MCS-51系统中,若晶振频率屡6MHz,一个机器周期等于( ) sA 、1.5 B 、3 C 、1 D 、2答案:21、D,22、单片机复位后,累加器A、PC、PSW的内容为( )A、A = FFH PC = 00H PSW = FFHB、A = 00H PC = 0000H PSW = 00HC、A = 07H PC = 0000H PSW = FFHD、A = 00H PC = 00H PSW = 00H答案:22、B,23、8031有四个工作寄存器区,
7、由PSW状态字中的RS1、RS0两位的状态来决定,单片机复位后,若执行 SETB RS1 指令,此时只能使用( )区的工作寄存器。A、0区 B、1区 C、2区 D、3区 答案:23、C,24、对MCS-51系列单片机P0口用作输出时,应外接( )A、上拉电阻B、二极管 C、三极管D、下拉电阻答案:24、A25、在进行BCD码运算时,紧跟加法运算指令后面的指令必须是( )指令。A、ADD B、DA A C、ADDC D、由实际程序确定答案:25、B,26、假定A=38H,(R0)=17H,(17H)=34H,执行以下指令:ANLA,#17HORL17H,AXRLA,R0CPLA后,A的内容为(
8、)。A、CDHB、DCHC、 BCHD、DBH答案:26、D,27、在MCS51中,需要外加电路实现中断撤除的是:A、定时中断B、脉冲方式的外部中断C、外部串行中断D、电平方式的外部中断答案:27、D,28、口的每一位能驱动()、个低电平负载有、个低电平负载、个低电平负载有 、个低电平负载答案:28、B,29、串行口的工作方式由( )寄存器决定。A、SBUF B、PCON C、SCON D、RI答案:29、C,30、某种存储器芯片是16KB,那么它的地址线根数是( )A、11根 B、12根 C、13根 D、14根答案:30、D,31、要MCS-51系统中,若晶振频率屡12MHz,一个机器周期等
9、于( ) sA 、1.5 B 、3 C 、1 D 、2答案:31、C ,32、单片机复位后,SP、PC、I/O口的内容为( )A、SP = 07H PC = 00H P0 = P1 = P2 = P3 = FFHB、SP = 00H PC = 0000H P0 = P1 = P2 = P3 = 00HC、SP = 07H PC = 0000H P0 = P1 = P2 = P3 = FFHD、SP = 00H PC = 00H P0 = P1 = P2 = P3 = 00H答案:32、C,33、8051有四个工作寄存器区,由PSW状态字中的RS1、RS0两位的状态来决定,单片机复位后,若执行
10、SETB RS0 指令,此时只能使用( )区的工作寄存器。A、0区B、1区 C、2区 D、3区答案:33、B,34、MCS51单片机响应中断矢量地址是 ( ) 。A中断服务程序的首句地址 B中断服务程序的出口地址C中断服务程序的入口地址 D主程序等待中断指令的地址答案:34、C35、单片机在与外部I/O口进行数据传送时,将使用( )指令。A 、MOVX B 、MOV C 、MOVC D 、视具体I/O口器件而定。答案:35、A ,36、使用单片机开发系统调试程序时,对原程序进行汇编的目的是( )。 A、将源程序转换成目标程序 B、将目标程序转换成源程序C、将低级语言转换成高级语言 D、连续执行
11、键答案:36、A,37、设内部RAM(30H)=40H,(40H)=10H,(10H)=00H,分析以下程序执行后( B ) =( )。MOV R0,#30HMOV A,R0MOV R1,AMOV B,R1A 、 00H B 、40H C 、30H D 、 10H答案:37、D,38、调用子程序、中断响应过程及转移指令的共同特点是( )。A、都能返回B、都通过改变PC实现转移 C、都将返回地址压入堆栈 D、都必须保护现场 答案:38、B,39、在进行串行通信时,若两机的发送与接收可以同时进行,则称为( )。A 、半双工传送B 、单工传送 C 、双工传送D 、全双工传送答案:39、D ,40、当
12、8031外扩程序存储器8KB时,需使用EPROM 2716( )A、2片B、3片 C、4片D、5片答案:40、C、二、判断题1、MOV A,30H这条指令执行后的结果(A)=30H。 答案:1、()2、8031与8051的区别在于内部是否有数据存储器。答案:2、()3、MCS-51单片机可执行指令:MOV R6,R7。 答案:3、()4、指令中直接给出的操作数称为直接寻址。答案:4、()5、MCS-51单片机中的PC是不可寻址的。答案:5、()6、MCS-51有 5 个中断源,有 5个中断优先级,优先级由软件填写特殊功能寄存器 IP以选择。 6、()7、MCS-51单片机可执行指令:MOV R
13、5,R4。答案:7、()8、MOV A,R7,将R7单元中的数据作为地址,从该地址中取数,送入A中。答案:8、()9、80C52单片机包含4K的ROM,256字节的RAM,6个中断源。答案:9、()10、堆栈的操作原则是先进后出、后进先出。 ( )答案:10、()11、同一时间同一级别的多中断请求,将形成阻塞,系统无法响应。 ( )答案:11、()12、MCS-51单片机可执行指令:MOV A,R3。 ( )答案:12、13、MOV A,30H 这条指令执行后的结果A=30H。 ( )答案:13、14、SP内装的是栈顶首址的内容。 ( )答案:14、15、对程序存储器的读操作,只能使用MOV指
14、令。 ( )答案:15、16、低优先级不能中断高优先级,但高优先级能中断优先级。 ( )答案:16、17、8031与8751的区别在于内部是否有程序存储器。 ( )答案:17、18、程序计数器PC中装的内容是当前正在执行指令的地址。 ()答案:18、()19、MCS-51单片机可执行指令:MOV 28H,R4; ()19、( )20、当向堆栈压入一个字节的数据后,SP中的内容减1; ()20()21、区分外部程序存储器和数据存储器的最可靠的方法是看其是被还是被信号连接。()21、()22、8031片内含EPROM,8051片内不含 EPROM。(x) 三、填空题第一部分1.编程时,一般在中断服
15、务子程序和子程序中需要保护和恢复现场,保护现场用_指令,恢复现场用指令。答案:1.PUSHPOP2.MCS-51共有111条指令,可分为几种不同的寻址方式。如:MOV A,R1 属于寻址方式,MOV C, bit 属于寻址方式。答案:2.寄存器间接 位3.外部中断有两种触发方式,电平触发方式和边沿触发方式。其中电平触发方式只适合于外部中断以(高或低)电平输入,边沿触发方式适合于以(正或负)脉冲输入。答案:3.低 负4.若(IP)=00001101B,则优先级最高者为,最低者为。(IP: PS PT1 PX1 PT0 PX0)答案:4.PX0 PS5.单片机串行通信时,若要发送数据,就必须将要发
16、送的数据送至单元,若要接收数据也要到该单元取数。单片机串行通信时,其波特率分为固定和可变两种方式,在波特率可变的方式中,可采用的溢出率来设定和计算波特率。答案:5. SBUF 定时器1第二部分1.MCS-51单片机PC的长度为16位。SP的长度为_位,DPTR的长度为_位。答案:1.8 162.访问MCS-51单片机程序存储器地址空间.片内数据存储器地址.片外数据存储器地址的指令分别为_, MOV 和_。答案:2.MOVC MOVX3.若同时中断实现下列顺序:T0外中断1外中断0,则要_、_和CLR PX0。 (IP: PS PT1 PX1 PT0 PX0)答案:3.SETB PT0SETB
17、PX14.串行数据通信分为单工方式,和答案:4.半双工全双工 5.LED数码显示按显示过程分为显示和显示2种。前者,对每位显示来说是连续显示的,且显示亮度较高;后者,多位显示时节省外部驱动芯片,显示亮度较低,功耗较低。答案:5. 动态静态第三部分1、编程时,一般在中断服务子程序和调用子程序中需用保护和恢复现场,保护现场用指令,恢复现场用指令。答案:1、PUSH ,POP2、若(IP)=00010101B,则优先级最高者为,最低者为。(IP: PS PT1 PX1 PT0 PX0)答案:2、外部中断0 ,定时器13、LED数码显示有和两种显示形式。答案:3、动态和静态4、单片机串行通信时,若要发
18、送数据,就必须将要发送的数据送至单元,若要接收数据也要到该单元取数,取数的指令为。答案:4、SBUF MOV A,SBUF 5、访问8051片外数据存储器MOVX指令采用的是寻址式,访问片外程序存储器MOVC指令采用的是寻址方式。答案:5、间接,基址加变址6、MCS-51单片机PC的长度为16位;SP的长度为位,DPTR的长度为位。答案:6、8, 16 7、在单片机应用系统中,常用一些器件扩展I/O,如74HC164芯片,其功能为锁存器;芯片为并入串出锁存器。答案: 7、 74HC164,并入串出第四部分1、使用8031单片机时引脚EA接电平,因其内部无程序存储器,8031片外可直接寻址的存储
19、空间达 KB。答案:1、低, 64 。2、若(IP)=00010001B,则优先级最高者为,最低者为。(IP: PS PT1 PX1 PT0 PX0)答案:2、外部中断0 ,定时器1。3、在中断子程序使用累加器、工作寄存器等资源时,要先将其原来的内容保存起来,这一过程叫做。当中断子程序执行完毕,在返回主程序之前,要将这些内容再取出,送还到累加器、工作寄存器等原单元中,这一过程称为。答案:3 保护现场,恢复现场4、设有一帧信息,1个起始位、8个数据位、1个停止位,传输速率为每秒960个字符。波特率为。答案:4、 9600bps5、在数据传输时,一个数据编码的各位按照一定顺序,一位一位地在信道中被
20、发送和接受的,这种传送通信方式称为通信。答案:5、串行6、MCS-51单片机指令系统,其中访问特殊功能寄存器是通过寻址方式答案:6、直接7、访问MCS-51单片机程序存储器地址空间、片内数据存储器地址、片外数据存储器地址的指令分别为、和。答案:7、MOVC 、MOV MOVX 。8、外部中断有两种触发方式:和。答案:8、电平触发方式,边沿触发方式。四、简答题1、Please write the full spelling of these instructions or registers:IE, PC, PSW,DJNZ, TMOD答案;1. IE-interrupt enable regi
21、ster PC-program counterPSW-program status wordDJNZ-decrease and jump if not zeroTMOD-timer mode register2、How many interrupts does the Single Chip Microcomputer have?What they are?答案;2. 5interrupts (1)External0(2)Timer/Counter0(3)External1(4)Timer/counter 1(5)Serial port3、How many parts are the low
22、128 units of the internal RAM divided? What they are?答案;3. 3 parts1)4 banks of 8 registers 2)bit addressable memory space 3)scratch pad area 4、8051单片机内部包含哪些主要逻辑功能部件?答案:8位CPU;4KB的片内程序存储器ROM。可寻址64KB程序存储器和64KB外部数据存储器;128B内部RAM;21个SFR;4个8位并行I/O口(共32位I/O线);一个全双工的异步串行口;两个16位定时器/计数器;5个中断源,两个中断优先级;内部时钟发生器。5
23、、MCS-51指令系统主要有哪几种寻址方式?每种寻址方式举个例子。答案:A:寄存器寻址 MOV A, R5B: 直接寻址 MOV A, 3AHC:立即数寻址 MOV A, #3AHD:变址寻址 MOVC A, A+PCE:相对寻址 SJMP LOOPF:位寻址 ANL C,70HG:寄存器间址 MOV A, R06中断响应的条件是什么?答案CPU每个机器周期都需要顺序检查每个中断源,当检测到有中断请求时,能否响应,还要看下述情况是否存在:(1)CPU正处理相同级别或更高级别的中断;(2)正在执行指令,还未到最后一个机器周期;(3)正在执行的指令是RETI或访问IP、IE指令,则执行完上述指令后
24、,再执行一条指令后,才会响应新中断。 7、8051单片机串行口有几种工作方式,简述各种方式的特点?答: 方式0:同步移位寄存器方式, 波特率固定为fosc / 12, RXD 接收发送数据, TXD 产生同步移位脉冲, 接收/发送完,置位RI / TI ,(要求SM2 = 0)无起始位,无停止位 。可用于并口的扩展。方式1:8位UART,波特率为(2SMODT1的溢出率)/ 32 ,可变。 一帧信息10位。当接收到数据后,置位RI是有条件的。即:REN = 1,RI = 0 且SM2 = 0或SM2 = 1但是接收到的停止位为1。此时,数据装载SBUF, RI置1 ,停止位进入RB8。方式2、
25、方式3 :9位UART 一般用于多机通信。一帧信息11位。接收到有效数据完毕,置位RI的条件:REN = 1,RI = 0 且SM2 = 0或接收到第9位数据为1,此时,数据装载SBUF,RI置1,第9位数据(TB8) RB8。 方式2波特率:(固定)2SMOD / 64 fosc。8、MCS-51指令系统主要有哪几种中断源?并写出每个中断入口地址?中断源 入口地址外部中断0 0003H定时器0溢出 000BH外部中断1 0013H定时器1溢出 0001BH串行口中断 0023H9、MCS-51单片机存储器的分为几个空间逻辑空间,每个空间的地址范围是多少? 答:分为程序存储器、内部数据存储器和
26、外部数据存储器。 程序存储器 内部数据存储器 外部数据存储器五、读程序题一)请按下列要求完成答题1、对每一条指令加上注释;2、说明连续运行该程序时,二极管的变化的规律;3、如果要使发光二极管依次轮流点亮,如何修改程序。ORG0000HAJMPMAINORG0100HMAIN:MOVSP,#60HLEDRESET:MOVR2,#80HMOVR1,#08HCLRP2.7IEDUP:MOVP1,R2ACALL DELAYMOVA,R2RRAMOVR2,ADJNZ R1,IEDUPAJMP LEDRESET答案:1、对每一条指令加上注释;ORG0000H;定义下面一条指令地址AJMPMAIN;无条件跳
27、转到MAIN标号指令ORG0100H;定义下面一条指令地址MAIN:MOVSP,#60H;(sp)=60HLEDRESET:MOVR2,#80H;(R2)=80HMOVR1,#08H;(R1)=08HCLRP2.7;P2。7取反IEDUP:MOVP1,R2;(P1)=R2ACALL DELAY;调用子程序DELAYMOVA,R2;(A)=R2RRA;循环右移AMOVR2,A;(R2)=ADJNZ R1,IEDUP;R1减1不为0跳转到IEDUPAJMP LEDRESET;无条件跳转到LEDRESET2、8个发光二极管总是保持7个亮、1个熄灭,并且是依次轮流熄灭,周而复始。3、修改R2中的初始值
28、,如下所示LEDRESET:MOV R2,#7FH二)读程序设内部RAM(30H)=40H,(40H)=10H,(10H)=00H(P1)=CAH,分析以下程序执行后各单元及寄存器、P2口的内容。MOV R0,#30H;()MOV A,R0 ;()MOV R1,A;()MOV B,R1 ;()MOV R1,P1 ;()MOV P2,P1 ;()MOV 10H,#20H;()执行上述指令后的结果为:(R0)= ,(R1)=(A)= ,(B)= ,(40H)=(P1)=(P2)= ,(10H)= ( )答案:MOV R0,#30H;(R0)30HMOV A,R0 ;(A)(R0)MOV R1,A;
29、(R1)(A)MOV B,R1 ;(B)(R1)MOV R1,P1 ;(R1)(P1)MOV P2,P1 ;(P2)(P1)MOV 10H,#20H;(10H)20H执行上述指令后的结果为:(R0)=30H,(R1)=(A)=40H,(B)=10H,(40H)=(P1)=(P2)=CAH,(10H)=20H六、程序设计1、比较大小The address of X is VAR on external RAM. The address of Y is FUNC on external RAM too. Please write the software according to the flow
30、ing function.答案:1、ORG0000HLJMPMAINORG0040HMAIN:MOVDPTR,#VARMOVXA,DPTRJZZEROJNBACC.7,PULSMOVA,#0FFHAJMPOUTPULS:MOV A,#01HAJMPOUTZERO:MOV A,#00HOUT:MOV DPTR,#FUNCMOVX DPTR,ASJMP $END2、定时器Selecting the Timer1s model 2 , the port P1.0 produces 1000us pulse wave.The MCU oscillatorfrequency is 12MHZ.TCONT
31、F1TR1TF0TR0IE1IT1IE0IT0IEEAET2ESET1EX1ET0EX0TMODGATEC/TM1M0GATEC/TM1M02)定时器0的初值:由(28-X)1us=100us得:X=156=0x9C程序清单如下:ORG0000HLJMPMAIN 。主程序入口地址ORG000BHLJMPT0INT 。T0中断入口地址ORG0040HMAIN:MOV TMOD, #02H 。 0000 0001 T0为方式2MOV TH0,#156;初值MOV TL0,#156MOV R7,#5SETB EA 。允许中断SETBET0SETB TR0 。启动定时SJMP $ 。等待中断T0INT
32、:;PUSHPSW。保护现场;PUSHACCCJNZR7,OUTT0CPL P1.0MOV R7,#5OUTT0:;POP ACC;POPPSWRETIEND3、定时器当系统选用6MHz晶体振荡器时,由T0工作在方式为1,并中断响应,周期为1s的矩形波形,占空比为75,并由P2.0输出。1)、写出T0定时器的方式控制字,T0定时器初值计算2)、试编写程序完成此功能。 TCON:TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0TMOD:GATE C/T M1 M0 GATE C/T M1 M0IE: EA ET2 ES ET1 EX1 ET0 EX0答案:1、解: 1)TMOD 0
33、1H 2)定时50MS 值为 9EH 58HCOUNTER EQU 30HORG 0000H LJMP MAIN ;主程序入口 ORG 000BH LJMP T0INT ;T0中断入口ORG 0040HMAIN: MOV TMOD,#01H ;T0为方式1 MOV TH0,#9EHMOV TL0,#58H ;初值 MOV COUNTER,#00H SETB EA ;允许中断SETB ET0 SETB TR0 ;启动定时 SJMP $ ;等待中断T0INT: PUSH PSW PUSH ACC;保护现场 INC COUNTERMOV A,COUNTER CJNE A,#15,T0INT1。0.7
34、5秒CLR P2.0 AJMP T0INT2T0INT1: CJNE A,#20,T0INT2。1秒SETB P2.0 MOV COUNTER,#00HT0INT2: MOV TH0,#9EHMOV TL0,#58H ;初值 POP ACCPOP PSW RETIEND4、传送数据编程将片内RAM 30H单元开始的15个字节的数据传送到片外RAM 3000H开始的单元中去。答案:STRAT:MOV R0,#30H MOV R7,#0FH MOV DPTR,#3000H LOOP: MOV A,R0 MOVX DPTR,A INC R0 INC DPTR DJNZ R7,LOOP RET5、应用
35、单片机内部定时器T0工作在方式1下,从P1.0输出周期为500Hz的方波脉冲信号,已知单片机的晶振频率为12MHZ, 定时器T0采用中断处理的方式。1)、写出T0定时器的方式控制字,T0定时器初值计算;2)、试编写程序完成此功能 TCON:TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0TMOD:GATE C/T M1 M0 GATE C/T M1 M0IE: EA ET2 ES ET1 EX1 ET0 EX0答案:1)、TMOD 01H定时1ms 值为 FCH 18H2)、 COUNTER EQU 30HORG 0000H LJMP MAIN ;主程序入口 ORG 000BH
36、LJMP T0INT ;T0中断入口ORG 0040HMAIN: MOV TMOD,#01H ;T1为方式1 MOV TH0,#0FCH MOV TL0,#18H ;初值 SETB EA ;允许中断SETB ET0 SETB TR0 ;启动定时 SJMP $ ;等待中断T0INT: PUSH PSW PUSH ACC;保护现场 CPL P1.0 MOV TH0,#0FCH MOV TL0,#18H ;初值POP ACC POP PSW RETI6请编程:片外RAM2000H开始的单元中有10个字节的二进制数,求它们之和,并将结果存储在片内RAM的30H的单元中(和256 )。答案: ORG 0
37、000H JMP MAINORG 0100HMAIN: MOV R7,#0AHMOV DPTR, #2000H MOV 30H,#00HADDIO: MOVX A, DPTR ADD A,30HMOV 30H,A INC DPTRDJNZ R7, ADDIOSJMP $END七、综合设计设计题1There are 8051、74LS373、74LS138、27128EPROM(16KB8bit,first address:4000H) and 6264RAM(8KB8bit,first address A000H),please draw MCU system:1) Draw the conn
38、ecting line(control bus, data bus and address bus ).2) Write the address of 27128EPROMand 6264RAM.答案:27128 Address:4000H7FFFH6264 Address:A000HBFFFH设计题2There are 8051、74LS373、74LS138、2764EPROM(8KB8bit,first address:4000H) and 62128RAM(16KB8bit,first address A000H),please draw MCU system:1、 Draw the connecting line(control bus, data bus and address bus ).2、 Write the address of 2764EPROM and 62128RAM答案:2764 Address:4000H5FFFH62128 Address:A000HDFFFH设计3现有89C51单片机、74LS373锁存器、74LS138、试用两片RAM芯片6264,组成的存储器系统,两片6264的起始地址分别是2000H,A000H,要求采用全译码法,不允许出现地址重叠现象:(1)写出两片6264的地址范围;(2)画出电路硬件连接(以三总线的方式画出)。