第一章单片机概述与结构一、选择题1.访问片外部数据存储器时,不起作用的信号是(C)。A./RDB./WEC./PSEND.ALE2.51单片机P0口用作输出时,应外接(A)。A.上拉电阻B.二极管C.三极管D.下拉电阻3.进位标志CY在(C)中。A.累加器B.算逻运算部件ALUC.程序状态字寄存器PSWD.DPTR4.堆栈数据的进出原则是(D)。A.先进先出B.进入不出C.后进后出D.先进后出5.51单片机系统中,若晶振频率为6MHz,一个机器周期等于(D)μs。A.B.3C.1D.26.在家用电器中使用单片机应属于微计算机的(B)。A.辅助设计应用B.测量、控制应用C.数值计算应用D.数据处理应用7.PC的值是(C)。A.当前正在执行指令的前一条指令的地址B.当前正在执行指令的地址C.当前正在执行指令的下一条指令的地址D.控制器中指令寄存器的地址8.单片机应用程序一般存放在(B)中。A.RAMB.ROMC.寄存器D.CPU9.在堆栈操作中,当进栈数据全部弹出后,这时SP应指向(D)A.栈底单元B.7FH单元C.栈底单元地址加1D.栈底单元地址减110.51单片机的并行I/O口信息有两种读取方法:一种是读引脚,还有一种是(A)。A.读锁存器B.读数据库C.读A累加器D.读CPU二、填空题1.单片机复位后,SP、PC和I/O口的内容分别为07H\000H\FFH。2.单片机有四个工作寄存器区,由PSW状态字中的RS1和RS0两位的状态来决定。单片机复位后,若执行SETBRS0指令,此时只能使用1区的工作寄存器,地址范围是08H---0FH。3.51单片机驱动能力最强的并行端口为P0端口。4.51单片机PC的长度为16位,SP的长度为___8____位,DPTR的长度为_16__位。5.访问51单片机程序存储器地址空间、片内数据存储器地址、片外数据存储器地址的指令分别为__movc_____,MOV和_movx______。6.若A中的内容为63H,那么P标志位的值为1。7.当扩展外部存储器或I/O口时,P2口用作高八位地址总线。8.51单片机内部RAM区有4个工作寄存器区。9.51单片机内部RAM区有128个位地址。10.外部中断1()的中断入口地址为0013;定时器1的中断入口地址为001B。11.51单片机有4个并行I/O口,P0~P3是准双向口,所以由输出转输入时必须先写入1。12.51单片机的堆栈建立在内部RAM内开辟的区域。三、判断1.所谓的单片机,就是将CPU、存储器、定时/计数器、中断功能以及I/O设备等主要功能部件都集成在一块超大规模集成电路的微型计算机。(T)2.51单片机的程序存储器数和数据存储器扩展的最大范围都是一样的。(T)3.51单片机是微处理器。(T)四、简答题1.单片机的发展大致分为哪几个阶段?单片机的发展历史可分为四个阶段:第一阶段(1974年----1976年):单片机初级阶段。第二阶段(1976年----1978年):低性能单片机阶段。第三阶段(1978年----现在):高性能单片机阶段。第四阶段(1982年----现在):8位单片机巩固发展及16位单片机、32位单片机推出阶段2.什么是单片机,什么是微型计算机系统?它们各有什么特点?以微型计算机为核心组成的应用控制系统叫做微型计算机系统,包括系统软件和硬件两个组成部分。单片机是面向工业控制的微处理器,是工业CPU,它是将CPU、RAM、ROM存储器、定时计数器、中断控制、I/O接口电路集成在一块芯片上。也叫单片微型计算机。由于体积小、功能强、可靠性高、低功耗,被广泛应用在嵌入式控制系统中。是计算机向小型化发展的结果。微处理器、单片机是计算机的处理器即指挥中心单元,微型计算机就是办公用的电脑,微型计算机系统就是计算机的应用系统。3.调研目前都有哪些新型的8位单片机,它们各有哪些特点?应用在什么场合?智能消费型的ARM11A8A10核心的,速度快有PDA所需的各种模块,例如LCD,AUDIO,SDI,USB等,用在PDA领域比如PAD,手机。工业型的STM32NXP11XXNXP21XXARM7M8核心,工业场合的各种接口ADCDACCANUARTPWMSPI等主要用在工业控制,工业仪表方面。专业型的,有些单片机有三相电机控制模块,有些单片机有智能电表控制模块,有些单片机有数字解码模块,等等。。。。4.51单片机存储器的分为几个空间,每个空间的地址范围是多少?分为四个空间内部程序存储器地址范围0000H-0FFFH共4KB,外部程序存储器0FFFH-0FFFFH共64KB;内部数据存储器00H-FFH共256个字节(其中包括低128字节和特殊功能寄存器SFR128个字节),外部数据存储器可扩展至64KB。CPU访问片内外程序存储器ROM指令用MOVC,访问片外数据存储器RAM指令用MOVX,访问片内RAM用MOV5.说明51单片机的引脚EA的作用,该引脚接高电平和接低电平时各有何种功能?当该引脚为高电平时,单片机访问片内程序存储器,但在PC(程序计数器)值超过0FFFH(对于8051、8751)时,即超出片内程序存储器的4KB地址范围时,将自动转向执行外部程序存储器内的程序。当该引脚为低电平时,单片机则只访问外部程序存储器,不论是否有内部程序存储器。对于8031来说,因其无内部程序存储器,所以该引脚必须接地,这样只能选择外部程序存储器6.51单片机片内RAM低128个单元划分为哪三个主要部分?各部分的主要功能是什么?8051单片机内部RAM低128单元划分为工作寄存器组、位寻址区、堆栈与数据缓冲区。它们的特点如下:(1)工作寄存器组(00H——1FH)这是一个用寄存器直接寻址的区域,内部数据RAM区的0—31,共32个单元。它是4个通用工作寄存器组,每个组包含8个8位寄存器,编号为R0——R7。(2)位寻址区(20H——2FH)16个字节单元,共包含128位,这16个字节单元既可以进行字节寻址,又可以实现位寻址。主要用于位寻址。(3)堆栈与数据缓冲区(30H——7FH)用于设置堆栈、存储数据。7.如果手中仅有一台示波器,可通过观察哪个引脚的状态,来大致判断51单片机是否正在工作?ALE引脚,地址锁存有效信号输出端。在访问片外程序存储器期间,每个机器周期该信号出现两次,其下降沿用于控制锁存P0口输出的低8位地址。及时不再访问片外程序存储器,改信号也以上述频率(振荡频率的1/6)出现,因此可用作对外输出的始终脉冲。也就是说,正常工作的MCS51,ALE会有脉冲信号输出。如果没有正常工作,那就没有脉冲信号输出,或者输出的不是等间距的脉冲信号。第二章指令系统一、选择题1.在相对寻址方式中,寻址的结果存放在(A)。A.PC中B.A中C.DPTR中D.某个存储单元中2.在寄存器间接寻址方式中,指定寄存器中存放的是(B)。A.操作数B.操作数地址C.转移地址D.地址的偏离量3.对程序存储器的读操作,只能使用(D)。A.MOV指令B.PUSH指令C.MOVX指令D.MOVC指令4.能够进行十进制调整的十进制运算(C)。A.有加法和减法B.有乘法和除法C.只有加法D.只有减法5.不能为程序存储器提供或构成地址的有(D)。A.PCB.AC.DPTRD.PSW6.以下各项中不能用来对内部数据存储器进行访问的是(A)。A.DPTRB.按存储单元地址或名称C.SPD.由R0或R1作间址寄存器7.若原来工作寄存器0组为当前寄存器组,现要改1组为当前寄存器组,不能使用的指令(C)。A.SETBB.SETBC.MOV,1D.CPL8.在进行BCD码运算时,紧跟加法运算指令后面的指令必须是(B)指令。A.ADDB.DAAC.ADDCD.由实际程序确定9.有如下程序段:MOV31H,#24HMOVA,31H;SWAPAANLA,#0F0H执行结果是(C)。A.(A)=24HB.(A)=42HC.(A)=40HD.(A)=00H10.假定A=38H,(R0)=17H,(17H)=34H,执行以下指令:ANLA,#17HORL17H,AXRLA,@R0CPLA后,A的内容为(D)。A.CDHB.DCHC.BCHD.DBH11.使用单片机开发系统调试程序时,对原程序进行汇编的目的是(A)。A.将源程序转换成目标程序B.将目标程序转换成源程序C.将低级语言转换成高级语言D.连续执行键12.设内部RAM中(30H)=40H,(40H)=10H,(10H)=00H,分析以下程序执行后(B)=(B)。MOVR0,#30HMOVA,@R0MOVR1,AMOVB,@R1A.00HB.40HC.30HD.10H13.调用子程序、中断响应过程及转移指令的共同特点是(D)。A.都能返回B.都通过改变PC实现转移C.都将返回地址压入堆栈D.都必须保护现场二、判断题1.MOVA,30H这条指令执行后的结果(A)=30H。()2.指令字节数越多,执行时间越长。()3.51单片机可执行指令:MOVR6,R7。()4.指令中直接给出的操作数称为直接寻址。()5.51有5个中断源,有5个中断优先级,优先级由软件填写特殊功能寄存器IP以选择。()6.MOVA,@R0,将R0中的数据作为地址,从该地址中取数,送入A中。()7.51单片机可执行指令:MOVA,@R3。()8.当向堆栈压入一个字节的数据后,SP的内容减1。()9.内部寄存器Rn(n=0~7)作为间接寻址寄存器。()10.MOVA,@R0这条指令中@R0的寻址方式称之为寄存器间址寻址。()11.堆栈是单片机内部的特殊区域,与RAM无关。()三、填空题1.51单片机共有111条指令,有七种不同寻址方式。如:MOVA,@R1属于寄存器间接寻址方式,MOVC,bit属于位寻址方式。2.访问51单片机片外数据存储器采用的是寄存器间接寻址方式,访问片外程序存储器采用的是变址寻址方式。3.在中断子程序使用累加器、工作寄存器等资源时,要先将其原来的内容保存起来,这一过程叫做保护现场。当中断子程序执行完毕,在返回主程序之前,要将这些内容再取出,送还到累加器、工作寄存器等原单元中,这一过程称为恢复现场。4.已知:MOVA,#28HMOVR0,#20HMOV@R0,AANLA,#0FHORLA,#80HXRLA,@R0执行结果A的内容为28H。四、下列指令是否错误,如错请改正(不能修改指令助记符)1.MOVA,#1000H2.MOVXA,1000H3.MOVCA,1000H4.MOVX60H,A5.MOVR0,60HMOV61H,@R06.XCHR1,R27.MOVX60H,@DPTR五、综合题1.51指令系统主要有哪几种寻址方式?每种寻址方式举个例子。2.阅读程序(1)对每一条指令加上注释;(2)说明连续运行该程序时,二极管的变化的规律;(3)如果要使发光二极管依次轮流点亮,如何修改程序。ORG0000HAJMPMAINORG0100HMAIN:MOVSP,#60HLEDRESET:MOVR2,#80HMOVR1,#08HCLRIEDUP:MOVP1,R2ACALLDELAYMOVA,R2RRAMOVR2,ADJNZR1,IEDUPAJMPLEDRESET3.编程将片内RAM30H单元开始的15个字节的数据传送到片外RAM3000H开始的单元中去。4.请编程:片外RAM2000H开始的单元中有10个字节的二进制数,求它们之和,并将结果存储在片内RAM的30H的单元中(和<256)。5.下列程序段经汇编后,从1000H开始的各有关存储单元的内容将是什么?ORG1000HTAB1EQU1234HTAB2EQU3000HDB“MAIN”DWTAB1,TAB2,70H6.试编写程序,查找在内部RAM的30H~50H单元中是否有0AAH这一数据。若有,则将51H单元置为“01H”;若未找到,则将51H单元置为“00H”。7.试编写程序,查找在内部RAM的20H~40H单元中出现“00H”这一数据的次数。并将查找到的结果存入41H单元。8.编写程序,实现双字节无符号数加法