1、,第三章,3-1 已知A=7AH,R0=30H(30H=A5H),PSW=80H,SP=65H,试分析下面每条指令的执行结果及对标志位的影响。(1) ADD A,R0;01111010+10100101=1,00011111,(A)=1FH,Cy=1,AC=0,OV=0,P=1(2)ADD A,#30H;01111010+00110000=10101010,(A)=AAH,Cy=0,AC=0,OV=1,P=0 (3) ADDC A,30H;01111010+10100101+1=1,00100000(A)=20H,Cy=1,AC=1,OV=0,P=1(4) SUBB A,R0;01111010
2、-10100101-1=1,11010100,(A)=D4H,Cy=1,AC=0,OV=1,P=0,(5) DA A;01111010+00000110=10000000, (A)=80H,Cy=0,其它无影响 (6) RLC A;(A)=11110101B=F5H,Cy=0,AC=0,OV=0,P=0 (7)RR A;(A)=00111101B=3DH,Cy=1, AC=0,OV=0,P=1 (8)PUSH 30H;SP=66H,(66H)=A5H (9)POP B;SP=64H,(B)=(65H) (10) XCH A,R0;(A)=A5H,(30H)=7AH,Cy=1,OV=0,AC=0
3、,P=0,3-3 已知片内RAM中(30H)=64H,(50H)=04H,片外RAM中(1000H)=0FFH,(2004H)=00H,并且TAB=2000H,试分析顺序执行每条指令的结果。(1) MOV R0,#30H;(R0)=30H(2) MOV A,R0;(A)=64H(3) MOV DPTR,#1000H;(DPTR)=1000H(4) MOVX DPTR,A;(1000H)=64H(5) MOV A,50H;(A)=04H(6) MOV DPTR,#TAB;(DPTR)=2000H(7) MOVC A,A+DPTR;(A)=00H(8) MOV P1,A;(P1)=00H,3-4
4、试分析在执行完下面的程序段后,A,R0,R1,R7,SP以及片内RAM的一些单元中内容各是什么?MOV SP,#65HMOV R7,#5MOV R0,#30HMOV R1,#40HLOOP:MOV A,R1PUSH ACCMOV A,R0MOV R1,AINCR0INCR1DJNZR7,LOOP,结果:(A)=(34H), (R0)=34H,(R1)=44H,(R7)=0, SP=70H ,(70H)=(44H),(30H)=(40H),(34H)=(44H)。3-5 已知SP=62H,(62H)=50H,(61H)=30H,问执行指令RET后,PC=?,SP=?并解释。答:执行指令RET,从
5、堆栈中弹出地址值给PC,栈指针减2,(62H),(61H)中的内容分别弹出PC=5030H,SP=60H 3-7 试编程求出片外RAM从2000H开始的连续20个单元的平均值,并将结果存入内部RAM20H单元。MOVDPTR,#2000HACALL AVG,子程序名:AVG子程序功能:求20个无符号数平均值子程序子程序入口:(DPTR)=数据区首地址指针子程序出口:(R3)(R4)=均值AVG: MOVR2,#20MOVR3,#00H;部分和高位字节单元清零MOVR4,#00H;部分和低位字节单元清零ACALLD-ADD;调用累加和子程序ACALLD-DIV;调用除以20的子程序求多字节累加和
6、子程序子程序名:D-ADD,子程序功能:多字节累加和子程序子程序入口:(DPTR)=数据区首地址指针子程序出口:(R3)(R4)=累加和,R3中内容为和高字节,R4中内容为和低字节D-ADD:CLRC LOOP:MOVXA,DPTR ADDA,R4 MOVR4,A CLRA ADDCA,R3 MOVR3,A INCDPTR DJNZR2,LOOP RET,双字节除以20的子程序子程序名:D-DIV子程序功能:除以20的子程序子程序入口:(R3)(R4)=被除数子程序出口:(R3)(R4)=商 D-DIV:MOVR7,#08H;置计数初值 DV1:CLRCMOVA,R4;将(R3)(R4)左移1
7、位RLCAMOV R4,AMOVA,R3RLCAMOV 00H,C;将移出的标志位送00H,CLRCSUBBA,R2;余数高位减除数JB00H,GOU;标志位为1够减JNCGOU;无借位,也说明够减ADDA,R2,不够减,恢复余数AJMPDV2GOU:INC R4;够减,商上1DV2:MOVR3,ADJNZR7,DV1;减完?没完继续MOV20H,R3;转存20HMOV21H,R4;转存21HRET,MOV21H,R4;转存21HRET 商数除数 被除数-除数作减法,够减商上1 余数 -除数再作减法,不够减商为0,并恢复减法前的余数 余数 -除数再作减法,直至最后,3-9 在外部数据存储区首地
8、址为TABLE的数据表中存有10B的数据,编程将每个字节的最高位置1,并送回原来的单元。ORG 0030HMOVDPTR,#TABLEMOVR2,#10LOOP:MOVXA,DPTRSETB ACC.7MOVXDPTR,AINCDPTRDJNZ R2,LOOPEND,3-10 编写能延时1s的子程序,设晶振频率为12MHz。DELAY1S:MOVR6,#4;1TDL1:MOVR5,#251;1TDL2:MOVR4,#248;1TDL3:NOP;1TNOP;1TDJNZR4,DL3;2TDJNZR5,DL2;2TDJNZR6,DL1;2TRET;2T延时时间:(248 4+1+2) 251+1+
9、2)4+1+2=998995,3-12 编程实现:将30H,31H中的双字节二进制数转换为3B压缩BCD码,并存放到40H开始的空间中。 因为(a15a14a1a0)=(02+a15) 2+a14) 2+a0),所以将二进制从最高位逐次左移入BCD码寄存器的最低位,并且每次都实现()2+ai的运算。双字节16位二进制数存于(R2R3)中,(R4R5R6)为转换完毕的压缩BCD码。MOVA,30HMOVR2,AMOVA,31HMOVR3,A,ACALL BINBCD2MOV R0,#40HMOVA,R4MOV R0,AINC R0MOVA,R5MOV R0,AINC R0MOVA,R6MOV R
10、0,ABINBCD2:CLRAMOVR4,A,MOVR5,AMOVR6,AMOVR7,#16LOOP:CLRCMOVA,R3RLCAMOVR3,AMOVA,R2RLCAMOVR2,AMOVA,R6ADDC A,R6DAA,MOVR6,AMOVA,R5ADDC A,R5DAAMOVR5,AMOVA,R4ADDC A,R4DAAMOVR4,ADJNZR7,LOOPRET,3-13 试编写一个查表程序,求X2(设X50)。X已存于50H单元,X2存入51H和52H单元。MOVDPTR,#TABLEMOVA,50HMOV R1,ACJNEA,#15,$+3JNCGO;大于15则转MOVC A,A+DP
11、TR;查表MOV51H,A MOV52H,#00HAJMP DONEGO:CLR CMOV A,R1SUBBA,#15,ADDA,DPLMOVDPL,ACLR AADDC A,DPHMOVA,R1MOVC A,A+DPTRMOV52H,ADEC DPTRMOVC A,A+DPTRMOV51H,ADONE:RET3-14 从P1口输入50个带符号数,编程统计其中正数、负数和零的个数,结果分别存入片内RAM30H、31H、32H单元。,ORG0030HMOV30H,#00HMOV31H,#00HMOV32H,#00HMOVR5,#50 LOOP:ORL P1,#0FFHMOVA,P1JZNEXT1
12、JBACC.7 NEXT2INC 30HSJMP DONE NEXT1:INC 32HSJMPDONE NEXT2:INC 31HDONE:DJNZ R5,LOOPSJMP $,3-17 设计带有两个按键和2个LED显示器的系统,每当按一下S1键,则使LED1点亮、LED2暗,若按一下S2键,则使LED2点亮、LED1暗。绘出相应的电路示意图,并编写相应的程序。ORG0030HORLP1,#0FHLOOP1:JNB P1.2,NEXT1JNBP1.3,NEXT2AJMPLOOP1NEXT1:LCALLDL10msJBP1.2,LOOP1,JNB P1.2,$MOVP1,#FEHAJMPLOOP
13、1NEXT2:LCALLDL10msJBP1.3,LOOP1JNB P1.3,$MOVP1,#FDHAJMPLOOP1RETDL10ms:RET,第四章 4-1 MCS-51单片机内部有几个定时/计数器?定时/计数器是由哪些专用寄存器组成的? 答:有T0和T1两个定时/计数器;工作方式寄存器TMOD,用于定义T0和T1的工作模式、选择定时/计数工作方式以及启动方式等;控制寄存器TCON,主要用于定时/计数器T0或T1的启停控制,标志定时/计数器的溢出和中断情况。 4-3 定时/计数器有哪几种工作方式?各有什么特点?适用于什么应用场合? 答:有四种工作方式,方式0,13位定时/计数器;方式1,1
14、6位定时/计数器;方式2,8位定时/计数器,初值自动重装;方式3,T0运行,而T1停止工作,8位定时/计数器。方式0,1,3需要重装初值,使得定时的时间产生误差,方式2自动重装初值,可精确定时。,4-5 设某单片机的晶振频率为12MHz,定时/计数器T0工作于定时方式1,定时时间为20s;定时/计数器T1工作于计数方式2,计数长度为100,请计算T0,T1的初始值,并写出其控制字。 答:T0的初始值X=2M-fosct/12=216-121062010-6/12=65536-20=65516=0FFECHT1的初始值X=2M-N=28-100=256-100=156=9CH控制字为011000
15、01B=61HMOVTMOD,#61HMOVTH0,#0FFHMOVTL0,#0ECHMOVTH1,#09CHMOVTL1,#09CH,4-7 试用定时/计数器T1对外部事件计数,要求每计数100,就将T1改成定时方式,控制从P1.1输出一个脉宽为10ms的正脉冲,然后又转为计数方式,如此反复循环。设系统晶振频率为12MHz。 解: (1) T1设置为工作方式1计数,由软件启动(2) T1 计数方式控制字TMOD=01010000=50H,X1=216-100=65436=FF9CH,TH1=FFH,TL1=9CHT1定时方式控制字TMOD=0001000=10H,X2=216-1210651
16、0-3/12=65536-5000=60536=111011001000B=0EC78HORG0000HSJMPMAINORG0030H,MAIN:MOV TMOD,#50HMOVTH1,#0FFHMOVTL1,#9CHSETBTR1STA1:JBCTF1,NEXT1SJMPSTA1NEXT1:MOV TMOD,#10HMOVTH1,#0ECHMOVTL1,#78HSETB P1.1,LP:JBC TF1,NEXT2SJMPLPNEXT2: MOV TH1,#0ECHMOVTL1,#78HCPLP1.1NEXT3:JBC TF1,MAINSJMPNEXT3RET,4-9 利用单片机内部定时/计
17、数器T1产生定时时钟,由P1口输出信号控制8个LED指示灯,试编程使8个指示灯依次轮流闪动,闪动频率10Hz。Fosc=12MHz。 解:T=1/10=0.1s=100ms,因此T1定时50ms,方式1TMOD=00010000B=10HX=216-50103/1=65536-50000=15536=0011110001111000=3C78HORG0000HSJMPSTARORG001BH;T1溢出中断AJMPDVT1ORG0030H,STAR:MOV TMOD,#10HMOVTH1,#3CHMOVTL1,#78HSETBET1SETBEASETBTR1MOVA,#0FFH MOV P1,A
18、CLR CSJMP$DVT1:MOV TH1,#3CHMOVTL1,#78H,RLCAMOVP1,ARETI 4-10利用定时/计数器测量某正脉冲宽度,已知此脉冲宽度小于10ms,系统晶振频率为12MHz。试编程测量脉宽,并把结果存入内部RAM的50H和51H单元。 解:12MHz,采用例4-6可测量脉冲宽度65.535ms,程序参考例4-6,第五章5-1什么是异步串行通信,它有何特点?答:异步串行通信是按数据或字符一帧一帧传送的,前面有一个起始位(0),后面有一个停止位(1),这是一种起止式的通信方式,字符之间没有固定的间隔长度。其优点是数据传送的可靠性较高能及时发现错误,缺点是通信效率比较
19、低。5-2 MCS-51单片机的串行口由哪些功能部件组成?各有什么作用?答: MCS-51单片机的串行口是一个全双工的异步串行通信接口,可同时发送和接收数据。串行口内部有数据接收缓冲器,和数据发送缓冲器。数据接收缓冲器只能读出不能写入,数据发送缓冲器只能写入不能读出,这两个数据缓冲器都用符号SBUF来表示,地址是99H。特殊功能寄存器SCON存放串行口的控制和状态信息,串行口用定时器T1或T2作为波特率发生器,特殊功能寄存器PCON的最高位SMOD为串行口波特率的倍率控制位。5-3简述串行口接收和发送数据的过程。答:串行口的接收和发送是同一地址(99H)两个物理空间的特殊功能寄存器SBUF进行
20、读或写的。当向SBUF发“写”命令时(执行“MOV SBUF,A”指令),即向发送缓冲器SBUF装载并开始由TXD引脚向外发送一帧数据,发送完中断标志位TI=1。,在满足RI=0的条件下,置允许接收REN=1,就会接收一帧数据进入移位寄存器,并装载到接收SBUF中,同时使RI=1。当发读SBUF命令时(执行“MOV A, SBUF”指令),便由接收缓冲器SBUF取出信息通过内部总线送CPU。5-4 MCS-51串行口有几种工作方式?有几种帧格式?各工作方式的波特率如何确定? 答:有4种工作方式:方式0(8位同步移位寄存器),方式1(10位异步收发),方式2(11位异步收发),方式3(11位异步
21、收发)。有2种帧格式:10位和11位。,方式0:波特率=fosc/12方式2:波特率=2SMODfosc/64方式1和方式3:波特率=2SMODfosc/32/12(256-x)定时器T1用作波特率发生器时通常选用工作模式2。5-6设计一个8051单片机的双机通信系统,并编写程序将甲机片内RAM30H5FH单元的数据块,通过串行口传送到乙机片外RAM3030H305FH单元中去。,第六章6-3 MCS-51单片机系统采用6264扩展数据存储器,用译码法扩展数据存储器在16根地址线内最多可扩展几片?此时数据存储器的容量是多少? 答: 最多可扩展8片, 此时数据存储器的容量是64KB。6-5MCS
22、-51单片机的控制线有哪些信号线?它们的作用是什么? 答:控制信号线有:使用ALE作为地址锁存的选通信号,以实现低8位地址的锁存。以PSEN信号作为扩展程序存储器的读选通信号以EA信号作为内外程序存储器的选择信号以RD和WR作为扩展数据存储器和I/O端口的读写选通信号,执行MOVX指令时,这两个信号分别自动有效。,6-6 MCS-51单片机P0口作地址线时为什么用锁存器? 答:由P0口提供低8位地址线,由于P0口分时复用为地址数据总线,所以为保持地址信息,在访问存储器期间一直有效,需外加地址锁存器锁存低8位地址,用ALE正脉冲信号的下降沿进行锁存。 6-7E2PROM的“写”操作和RAM的“写
23、”操作有什么异同? 答:“写”操作都是WR信号有效,与RAM相比,E2PROM的“写”操作速度是很慢的,E2PROM“写”的数据能长期保存,而RAM“写”的数据掉电后消失。,6-9设某RAM芯片具有1MB(20根地址线),按32个32KB设计(1)画出MCS-51单片机与RAM的连接图(2)确定RAM的地址(3)系统能否再扩展其他接口芯片?说明原因。解:(1)MCS-51单片机与RAM的连接图如下,(2)RAM的地址,通过译码器还能扩展RAM,另外通过PSEN可扩展程序存储器。6-12某8255A工作在PB口选通输入PC口高四位输出,试确定8255A的方式控制字。 答:控制字可为1010001
24、0B=A2H第七章7-1什么是单片机I/O接口?I/O接口应具备有哪些功能? 答:I/O接口是单片机与外部设备交换信息的桥梁,是指CPU和外存储器外部设备或两种机器之间通过系统总线进行连接的逻辑部件(或电路)。,主要功能:实现和不同外设的速度匹配;输出数据锁存;输入数据三态缓冲。7-3什么是接口电路中的端口? 答:I/O端口简称I/O口,常指I/O接口电路中具有端口地址的寄存器或缓冲器。7-5单片机与I/O设备之间,通常包括哪些传送的信息? 答:数据信息状态信息和控制信息。7-6在单片机中,使用哪三种控制方式实现数据的I/O传送?试说明各种方式的特点。 答:无条件传送查询传送和中断传送方式。7
25、-7键盘接口必须解决的问题有哪些?,答:是否有键按下;有键按下,判定是哪一个;确定被按键的含义;去抖动;等7-9单片机应用系统中有哪些常用的显示器?显示器有哪些显示方式? 答:有LED发光二极管显示器LCD液晶显示器显示方式静态显示和动态显示7-15简述LCD液晶显示器件的特点和使用场合。 答:特点:体积小重量轻功耗低抗干扰能力强使用场合:仪器仪表和控制系统中。7-17对于大多数并行打印机接口,需要哪些信号满足时序关系,即可控制打印机正常打印?,答:4种信号线CPU先查看BUSY信号,为低时,数据送上DATA线后,发出STB信号通知打印机,打印机接到STB后,BUSY为高,数据接收好并存入内部
26、打印缓冲器后,打印机送出ACK信号,并撤消BUSY信号。 7-19为什么说使用RS-485网络可以有效地防止噪声干扰? 答:RS-485与RS-232比,信号的幅值低,另外RS-485采用差动信道,发送回路和接收回路分别提供独立的地线,因此RS-485网络可以有效地防止噪声干扰。,第八章8-2试画出三种可能使DAC0832工作于单缓冲方式的硬件连线图。答:两个寄存器任一个直通,另一个受控锁存或两个同步受控。,8-5在例8-5中,用8255A作接口,则应如何将ADC0809与8255A连接?试画出其连接示意图。用查询方式读取转换结果,写出相应的采集程序。解:ADC0809各通道地址为7FF0H7
27、FF7H8255A的4个地址分别为:PA口岸FF1FH,PB口FF3FH,PC口FF5FH,控制字寄存器地址FF7FH。,第九章9-1单片机应用系统设计包括哪些内容?答:硬件设计,软件设计和抗干扰设计9-2AT89C2051单片机与MCS51单片机有什么区别? 答:AT89C2051单片机与MCS51单片机相比,没有如下 信号:没有P0,P2口,没有地址锁存信号线ALE没有外部程序存储器读选通信号PSEN没有读信号RE和写信号WR,9-3电子钟是利用定时器T1产生时间基值,试问电子钟是否有时间误差? 答:T1采用工作方式1,因此需要重装初值,电子钟是有时间误差。9-4定时器T1的中断响应时间是
28、多少?它与时间的误差是否有关? 答:中断响应时间是指从查询中断请求标志位到转向中断服务程序如口地址所需的机器周期数,一般是38个机器周期,与时间误差有关,一般情况下中断响应可以不考虑,精确定时场合应进行调整。,9-5中断服务程序的执行时间大约是多少?它与时间的误差是否有关? 答:由中断服务程序可知中断服务程序的执行时间,其中重装初值语句影响时间的误差。9-6读取正在运行中TH1TL1的值,是否会产生误差?它与时间的误差是否有关? 答:CPU不能在同一时刻读取THX和TLX的内容,比如,先读(TLX),后读(THX),由于定时器在不断运行,读(THX)前,恰好出现TLX溢出向THX进位的情况,则
29、读得的(TLX)值就完全不对了。用样先读(THX)再读(TLX)也可能出错。,解决的办法:先读(THX)后读(TLX),再读(THX)。如2次读得的(THX)相同,则可确定读得的内容是正确的。如2次读得的(THX)不相同,则再重复上述过程。对定时器没影响,因此对时间的误差没影响。,1.填空题1)如不使用MCS-51片内存储器引脚EA必须接地。2)微处理器由寄存器堆控制器和运算器三部分组成。3)当MCS-51引脚ALE信号有效时,表示从P0口稳定地送出了低8位地址。4)MCS-51有4个并行I/O口,其中P0P3是准双向口,所以由输出转输入时必须先写入“1”。5)MCS-51系统中,当PSEN信
30、号有效时,表示CPU要从程序存储器读取数据。6)MCS-51特殊功能寄存器只能采用直接寻址方式。7)如用传送指令访问MCS-51的程序存储器,它的操作码助记符应为MOVC。,8)MCS-51有4组工作寄存器,它们的地址范围是00H1FH。 9)计算机的系统总线有地址总线控制总线和数据总线。10)MCS-51串行接口有4种工作方式,这可在初始化程序中用软件填写特殊功能寄存器SCON加以选择。11)当使用慢速外设时,最佳的传输方式是中断。12)MCS-51有5个中断源,有2个中断优先级,优先级由软件填写特殊功能寄存器IP加以选择。13)累加器(A)=80H,执行完指令ADD A,#83H后,进位位
31、C=1。14)JZ e的操作码地址为1000H,e=20H,它的转移目的地址为1022H。15)MOV PSW,#10H是将MCS-51的工作寄存器置为第2组。,16)设DPTR=2000H,(A)=80H,则MOVC A,A+DPTR的操作数的实际地址为2080H。17)在串行通信中,有数据传送方向单工半双工全双工三种方式。18)PSW中RS1RS0=10H时,R2的地址为12H。19)PSW中RS1RS0=11H时,R2的地址为1AH。20)写8255A控制字时,应将A1A0置为11。21)MOV C,20H源寻址方式为位寻址。22)INC不影响CY位。23)外中断请求标志位是IE0和IE
32、1。24)三态缓冲寄存器输出端的三态是指低电平态高电平态和高阻态。,25)A/D转换器的三个最重要指标是转换速度分辨率和转换精度。26)某8位D/A转换器的输出满刻度电压为+5V,则该D/A转换器的分辨率为5/255=0.016V。 27)假定累加器A的内容为30H,执行指令:1000H:MOVC A,A+PC后,把程序存储器1031H单元的内容送累加器A中。28)假定(SP)=62H,(61H)=30H,(62H)=70H。执行下列指令:POP DPHPOPDPL后,DPTR的内容为7030H,SP的内容为60H。,29)异步串行数据通信的帧格式由起始位数据位奇偶校验位和停止位组成。 30)
33、请填好下段程序内有关每条指令执行结果的注释中之空白。MOVA,PSW;(A)=10HMOV B,A;(B)=10HMOV PSW,A;(PSW)=11H31)复位时A=00H,PSW=00H,SP=07H,P0P3=FFH。32)MOVX指令用来对片外RAM进行读写操作。33)执行LCALL 4000H指令时,MCS-51所完成的操作是PC+3入栈,4000H送PC。34)MOVX DPTR,A产生WR信号。,35)要测量INT0引脚上的一个正脉冲宽度,那么特殊功能寄存器TMOD的内容应为09H。36)MOVX A,DPTR产生RD信号。37)MCS-51的中断允许触发器内容为83H,CPU将
34、响应的中断请求是:INT0,T0。38)在多机通信中,主机发送从机地址呼叫从机时,其TB8位为1;各从机此前必须将其SCON中的REN位和SM2位设置为1。39)T0和T1两引脚也可作为外部中断输入引脚,这时TMOD寄存器中的C/T位应当为1。40)RETI指令以及任何访问IE和IP寄存器的指令执行过后,CPU不能马上响应中断。,41)MCS-51的相对转移指令的最大负跳距离为128B。 42)各中断源发出的中断请求信号,都会标记在MCS-51系统中的TCON/SCON。43)MCS-51单片机的并行I/O口信息有两种读取方法:一种是读引脚,还有一种是读锁存器。44)MCS-51的并行I/O口
35、读改写操作,是针对该口的内部锁存器。45)可以为访问程序存储器提供或构成地址的有PC,A和数据指针DPTR。46)在变址寻址方式中,以A作为变址寄存器,以PC或DPTR作为基址寄存器。,47)在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的地址。48)在直接寻址方式中,只能使用8位二进制数作为直接地址,因此其寻址对象只限于片内RAM。2.判断以下指令的正误1)MOV R1,#80H () 2)ADDC A,C ()3)MOV 20H,R0 () 4)MOV R7,R1()5)CPLR4() 6)MOV R1,#0100H()7)MOV 20H,21H() 8)
36、SETB R7.0()9)ANL R1,#0FH() 10)ORL A,R5(),11)MOVX A,2000H () 12)XRL P1,#31H() 13)MOV A,DPTR () 14)MOV 20H,DPTR () 15)PUSH DPTR () 16)MOV R1,R7() 17)MOVC A,R1() 18)POP 30H() 19)MOVX DPTR,#50H () 20)MOVC A,DPTR () 21)MCS-51上电复位时,SBUF=00H。()SBUF不定 22)MCS-51的串行接口是全双工的.() 23)调用子程序指令及返回指令与堆栈有关但与PC无关。() 24)
37、TMOD中的GATE=1时,表示有两个信号控制顶时器的启停。(),3.简答题1)什么是寻址方式? 答:寻找指令中操作数或操作数所在地址2)什么是堆栈? 答:片内RAM中专门开辟出来的一个区域,数据的存取是以“后进先出”的结构方式处理的。 3)串行数据传送的主要优点和用途是什么? 答:按位传送,优点是所需传输线根数少,适合远距离数据传送。 4)中断服务子程序与普通子程序有哪些异同之处? 答:相同点:都是让CPU从主程序转去执行子程序,执行完毕又返回主程序。,不同点:中断服务程序是随机的,而普通子程序是预先安排好的;中断服务子程序以RETI结束,而一般子程序以RET结束。RETI除将断点弹回PC动
38、作外,还要清除对应的中断优先标志位,以便新的中断请求能被响应。 5)说明DA A指令的用法答:为十进制调整指令,在进行BCD数加法运算时,该指令要跟在加法指令后面,对A的内容进行十进制调整。 6)单片机对中断优先级的处理原则是什么?答:(1)低级不能打断高级,高级能够打断低级 (2)一个中断已被响应,同级的被禁止 (3)同级,按查询顺序,INT0T0INT1T1串行接口 7)单片机定时器/计数器作定时和计数时,其计数脉冲分别由谁提供?,答:定时:单片机内部,其频率为振荡频率的1/12 计数:单片机外部,P3.4(T0)和P3.5(T1)引脚8)MCS-51单片机定时器/计数器的门控信号GATE
39、设置为1时,定时器如何启动? 答:GATE为1时,定时器的启动受外部INT0(INT1)引脚的输入电平控制:当INT0(INT1)引脚为高电平时,置TR0(TR1)为1时启动定时器/计数器0(1)工作9)MCS-51单片机有几种复位方法?应注意的事项? 答:上电自动复位和按键手动复位。使用时应注意:上电复位的最短时间应保证为振荡周器建立时间加上两个机器周期的时间。当单片机运行程序出错或进入死循环时,可用按键复位来重新启动。,10)MCS-51单片机的程序存储器和数据存储器共处同一地址空间为什么不会发生总线冲突? 答:访问不同存储器,使用不同的指令。如访问ROM用MOVC,访问片内RAM则用MOV,片外RAM用MOVX。不同的指令控制信号有所不同,箍可避免总线冲突。11)为什么要消除键盘的机械抖动?有哪些方法?12)简述单片机系统扩展的基本原则和实现方法。13)什么是单片机的机器周期,状态周期,振荡周期和指令周期?它们之间是什么关系?14)当89C51大片内ROM内容已不符合要求,那么片内ROM如何继续使用?,