单片机课后习题答案1.pdf
1 .十进制数14对应的二进制数表示为(1110B),十六进制数表示为(OEH)。十进制数-100的补码为(9CH),+100的补码为(64H)。2.在一个非零的无符号二进制整数的末尾加两个0 后,形成一个新的无符号二进制整数,则新数是原数的(4)倍。3.8 位无符号二进制数能表示的最大十进制数是(255)。带符号二进制数11001101转换成十进制数是(-51)。4.可以将各种不同类型数据转换为计算机能处理的形式并输送到计算机中去的设备统称 为(输入设备)。5,已知字符D 的 ASCII码是十六进制数44,则字符T 的 ASCII码是十进制数(84)6.若某存储器容量为640KB,则表示该存储器共有(655360)个存储单元。7.在计算机中,二进制数的单位从小到大依次为(位)、(字节)和(字),对应的英文名称分别是(bit)、(Byte)和(Word)。8.设二进制数 A=10101101,B=01110110,则逻辑运算 A V B=(11111111)A AB=(00100100)A B=(11011011)。9.机器数01101110勺真值是(+110)机器数01011001的真值是(+89),机器数10011101的真值是(+157或-115),机器数10001101的真值是(+206或-50)。tx1 .用 8 位二进制补码数所能表示的十进制数范围是(D)(A)-127-+127(B)-128 +128(C)-1 2 7-+128(D)-128 +1272.下列等式中,正确的是(B)(A)1 KB=1024 X 1024 B(B)1 MB=1024 X1024 B(C)1 KB=1024 M B(D)1 MB=1024 B3.程序与软件的区别是(C)(A)程序小而软件大(B)程序便宜而软件昂贵(C)软件包括程序(D)程序包括软件4.存储器中,每个存储单元都被赋予惟一的编号,这个编号称为(A)(A)地 址(B)字 节(C)列 号(D)容量5.8 位二进制数所能表示的最大无符号数是(B)(A)255(B)256(C)128(D)1276.下列4 个无符号数中,最小的数是(B)(A)11011001(二进制)(B)37(八进制)(C)75(十进制)(D)24(十六进制7.下列字符中,ASCII码最小的是(B)(A)a(B)A(C)x(D)X8.下列字符中,ASCII码最大的是(C)(A)a(B)A(C)x(D)X9.有一个数152,它与十六进制数6A相 等,那么该数是(B)(A)二进制数(B)八进制数(C)十进制数(D)十六进制数第2章80C51单片机的硬件结构1.通过堆栈实现子程序调用,首先要把(PC)的内容入栈,以进行断点保护。调用返回时再进行出栈操作,把保护的断点送回(PC)。2.80C51单片机的时钟电路包括两部分内容,即芯片内的(高增益反相放大器反相器)和芯片外跨接的(石英晶体振荡器晶振)与(两个微调电容)。若调高单片机的晶振频率,则单片机的机器周期会变(短)。3.通常单片机有两种复位操作,即(上电复位)和(手动复位)。复位后,PC值 为(0000H),SP值 为(07H),通用寄存器的当前寄存器组为(第 0)组,该 组寄存器的地址范围是从(00H)到(07H)。4.80C51单片机中,一个机器周期包含(6)个状态周期,一个状态周期又可划分为(2)个拍节,一个拍节为(1 )个振荡脉冲周期。因 此,一个机器周期应包含(12)个振荡脉冲周期。5.80C51中惟一一个可供用户使用的16位寄存器是(DPTR),它可拆分为两个8 位寄存器使用,名称分别为(DPH)和(DPL)。6.单片机程序存储器的寻址范围由PC的位数决定。80C51的 PC为 16位,因此程序存储器地址空间是(64 KB)。|=1.下列概念叙述正确的是(D)(A)80C51中共有5 个中断源,因此在芯片上相应地有5 个中断请求输入引脚(B)特殊的存取规则使得堆栈已不是数据存储区的一部分(C)可以把PC看成是数据存储空间的地址指针(D)CPU中反映程序运行状态和运算结果特征的寄存器是PSW2.取指操作后,PC的值是(C)(A)当前指令前一条指令的地址(B)当前正在执行指令的地址(C)下一条指令的地址(D)控制寄存器中指令寄存器的地址3.80C51单片机中,设置堆栈指针SP为 37H后就发生子程序调用,这时SP的值变为(C)(A)37H(B)38H(C)39H(D)3AH4.设置堆栈指针SP=30H后,进行一系列的堆栈操作。当进栈数据全部弹出后,SP应指向(A)(A)30H单 元(B)07H单 元(C)31H单 元(D)2FH单元5.下列关于堆栈的描述中,错误的是(C)(A)80C51的堆栈在内部RAM中开辟,所以SP只需8 位就够了(B)堆栈指针SP的内容是堆栈栈顶单元的地址(C)在 80c51中,堆栈操作过程与一般RAM单元的读/写操作没有区别(D)在中断响应时断点地址自动进栈6.在单片机芯片内设置通用寄存器的好处不应该包括(A)(A)提高程序运行的可靠性(B)提高程序运行速度(C)为程序设计提供方便(D)减小程序长度7.下列叙述中正确的是(D)(A)SP内装的是堆栈栈顶单元的内容(B)在中断服务程序中没有PUSH和 POP指 令,说明此次中断操作与堆栈无关(C)在单片机中配合实现“程序存储自动执行”的寄存器是累加器-FFFF.-FFFFF FXF-彳-FFFFF-F.rF-*ff-X-FEF*(D)两数相加后,若 A 中数据为66H,则 PSW中最低位的状态为0第 3 章 80C51单片机指令系统1 假定累加器A 中的内容为30H-执行 指 令 1000H:MOVC A,A+PC”后,会把程序存储器(1031H)单元的内容送累加器A。2假定(A)=85H,(RO)=20H (20H)=OAFH,执行指令ADD A,R0”后,累加器A 的内容为(3 4 H),C丫的内容为(1),AC的内容为(1),OV的内容为(1 )。3.执行如下指令序列后,所实现的逻辑运算式为(P3.0 P1.0 P1.1 P1.2)MOVC,P1.0ANLC,P1.1ANLC,/P1.2MOV P3.0,C4.假定 addr11=00100000000B 标号 qaz 的地址为 1030H,执行指令 qaz:AJMPad drU 后,程序转移到地址(1100H)去执行。5.累加器A 中存放着一个其值小于或等于127的8位无符号数CY清 0 后 执 行“RLCA”指 令,则 A 中的数变为原来的(2)倍。6.已知A=7AH,R0=30H,(30H)=A5H,PSW=80H,请按要求填写各条指令的执行结果(每条指令均按已给定的原始数据进行操作)。XCHA,R0A=(3 0 H),R0=(7AH)XCH A,30H A=(0A5H)XCH A,R0 A=(0A5H)XCHD A,R0 A=(75H)SWAP A A=(0A7H)ADD A,RO A=(OAAH),CY=(0),OV=(1 )ADD A,30H A=(1FH),CY=(1 ),OV=(0)ADD A,#30H A=(OAAH),CY=(0),OV=(1 )ADDC A,30H A=(20H),CY=(1),OV=(0)SUBB A,30H A=(0D4H),CY=(1 ),OV=(1 )SUBB A,#30H A=(49H),CY=(0),OV=(0)-.下列指令或指令序列中,不能实现PSW内容送A 的 是(C)(A)MOV A,PSW(B)MOV A,ODOH(C)MOV R0,ODOH(D)PUSH PSW MOV A,R0 POP ACC2.在相对寻址方式中,“相对”两字是指相对于(C)(A)地址偏移量rel(B)当前指令的首地址(C)下一条指令的首地址(D)DPTR值3.下列指令或指令序列中,能将外部数据存储器3355H单元内容传送给A 的 是(B)(A)MOVX A,3355H(B)MOV DPTR,#3355HMOVX A,DPTR(C)MOV PO,#33H(D)MOV P2,#33HMOV RO,#55H MOV R2,#55HMOVX A,RO MOVX A,R24.对程序存储器的读操作,只能使用(D)(A)MOV指 令(B)PUSH 指令(C)MOV X 指 令(D)MOVC 指令5.执行返回指令后,返回的断点是(C)(A)调用指令的首地址(B)调用指令的末地址(C)调用指令的下一条指令的首地址(D)返回指令的末地址6.以下各项中不能用来对内部数据存储器进行访问的是(A)(A)数据指针DPTR(B)按存储单元地址或名称(C)堆栈指针SP(D)由 R0或 R1作间址寄存器1.判断下列指令的合法性(合法打V”,非法打 X”)MOV A,R2(X)MOV RO,R1(X)INC DPTR(V)MOV PC,#2222H(X)DEC DPTR(X)RLC RO(X)MOV OEOH,R0(V)CPL R5(X)CLR RO(X)CPL FOH(X)PUSH DPTR(X)MOVX POP 30H(V)A,R1(V)MOV A,1FH(V)MOV C,1FH(V)MOV FO,ACC.3(X)MOV FO,C MOV(V)MOV P1,R3(V)DPTR,#0FCH(X)CPL 30H(V)PUSH RO(XMOV C,#0FFH(X)MOV A,#0D0H(V)2.利用位操作指令序列实现下列逻辑运算。(1)D=(10H P1.0)(11H CY)MOVC,P1.0ORLC,/10HMOV FO,CORLC,11HANL C,FOMOV D,C(2)E=ACC.2 P2.7 ACC.1 P2.0MOV C,ACC.2ANL C,P2.7ORLC,ACC.1ANL C,P2.0MOV E,C3.编写程序将内部RAM 20H 23H单元的高4 位写1,低 4 位写0。分 析:就是把内部RAM 20H 23H这 4 个单元写入0F0H。用一个DJNZ的循环ORG 0000HMOV RO,#20H;R0 指向 20H 单元-FFF-r-FFFFF F-hF-F-FXF 八 彳-FFFFF-F。r-FXF*MOV R1,#04H;4 个单元LOOP:MOV R0,#0F0H;写入INC RODJNZR1.LOOP彳盾环4 次END4.在 m 和 m+1单元中存有两个BCD数,将他们合并到m 单元中,编写程序完成。ORG 0030HMOVRO,#mMOV A,R0;将m 单元中的BCD数送入累加器AANL A,#0FH;把m 单元的高4 位清0SWAP A;将 m 单元中的BCD数移入高4 位MOV R0,A;m 单元高4 位为BCD数,低 4 位为0INC R0指 向 m+1单元MOV A,R0;将m+1单元中的BCD数送入累加器AANL A,#0FH把 m+1单元的高4 位清0DEC RO;指向m 单元ORL A,R0;将和m+1单元和m 单元内容合并MOV R0,A;合并后结果送m 单元END5.将内部RAM中从data单元开始的10个无符号数相加 其和送sum单元嘏定相加结果小于255。编写程序完成。ORG 0030HMOV R0,#10;给R0置计数器初值MOV R1,#data;数据块首址送R1CLR A;A 清零LOOP:ADD A,R1;加一个数INC R1;修改地址,指向下一个数DJNZ RO,LOOP;R0减 1,不为零循环MOV sum,A;存 10个数相加和END6假定8 位二进制带符号数存于R0中,要求编写一个求补(取反)程 序,所得补码放入 R1中。分 析:对存于R0中的二进制带符号数,如果是正数,则将其变成绝对值相等的负数(用补码表示);如果是负数(用补码表示),则将其变成绝对值相等的正数。ORG 0030HMOV A,R0将 带符号数送入ACPL AADD A,#01H;末 位 力 口 1MOVR1,A;补码存入R1END第 4 章单片机汇编语言程序设计/假定A=40H,R仁 23H,(40H)=05H。执行以下两条指令后,-FFFF.-FFFFF FXF 一彳-FFFFF-F.rF-*ff-X-FEF*A=(25H),R 仁(40H),(40H)=(0 3 H)。XCH A,R1;A=23H,R 仁 40HXCHD A,R1;A=20H,(40H)=03H2假定80C51的晶振频率为6 MHz-执行下列程序后,在 P1.1引脚产生的方波宽度为(5.804ms)START:SETB P1.1;P1.1 B 1 (1 周期)DL:MOV 30H,#03H;30H 置初值(1 周期)DLO:MOV 31H,#0F0H;31H 置初值(1 周期)DL1:DJNZ31H,DL1;31H减 1,不为0 重复执行(2 周期)DJNZ 30H,DL0;30H 减 1,不为 0 转 DL0(2 周期)CPLP1.1;P1.1 取 反(1 周期)SJMPDL;转 DL(2 周期)方波宽度=(2*15*16+2+1)*3+(2*15*16+2+1)*3+1+2+142=5804 s3.下列程序中,X、丫和 Z 为输入的8 位无符号二进制数,F为输出的逻辑运算结果。试画出该程序所模拟的组合逻辑电路。MOV A,XANL A,YMOV R1,AMOV A,YXRL A,ZCPL AORLA,R1MOV F,AF=X 丫 丫 Z&11xYzF4.分析下列跳转程序,程序中A 与 30H单元中的数都是符号数,说明当(A=(3 0 H)时转向 L00P 1,当(A(3 0 H)时转向 L00P 2,当(A(3 0 H)时转向L00P3。MOV RO,A;RO J AANL A,#80HJNZ NEG;A0,(30H)0,(30H)0,转 COMPNEG:MOV A,30HANL A,#80HJZ L00P3;A0,转 L00P3COMP:MOV A,ROCJNE A,30H,NEXT;A 工(30H),转 NEXTSJMP LOOP1;A=(30H),转 L00P1NEXT:JNC L00P2;A(30H),转 L00P2JC LOOP3;A v(30H),转 L00P3综上分析可知,当 A=(30H)时转向L00P1,A(30H)时转向LOOP2,A(30H)时转向L00P3。5.假定80c51的晶振频率为6 MHz,下列程序的执行时间为(30.696ms)。已知程序中前 2 条指令机器周期数为1,后 4 条指令机器周期数为2。MOV R3,#151 周期DL1:MOV R4,#255 1 周期DL2:MOVP1,R3 2 周期DJNZ R4,DL22 周期DJNZ R3,DL1 2 周期RET 2 周期执行时间:T=(2+2)*255+2+1*15+2+1)*2=30696 smu1.把长度为10H的字符串从内部RAM的输入缓冲区inbuf向位于外部RAM的输出缓冲区outbuf传送,一直进行到遇见回车或整个字符串传送完毕,试编程实现。11ORG 0030HMOV R0,#in bufMOV DPTR,#outbufMOV R4,#10HLOOP:MOV A,R0;从内部 RAM 取数CJNE A,#0DH,LL;是否为回车符CRSJMP STOP;是回车符,则转STOP,停止传送LL:MOVX DPTR,A;不是回车符,则传送到外部RAMINC R0INC DPTRDJNZ R4,LOOP;至 传送完则循环STOP:SJMP$2.内部RAM从 list单元开始存放一正数表,表中之数作无序排列,并 以-1作结束标志。编程实现找出表中最小数。分 析:从 list+1单元开始判断其中的数是否为-1,将比较得到的小数放入累加器AORG 0030HMOV RO,#listMOV A,R0;取第一个正数LOOP:INC RO;指向下一个正数MOV 30H,R0CJNE A,30H,CHK;前一个数与后一个数比较CHK:JC LOOP1;前一个数小,则转 LOOP1MOV A,30H;前一个数大,取后一个数LOOP1:XCH A,30HCJNE A,#0FFH,LOOP;判断后一个数是否为-1XCH A,30H;取最小数SJMP$3.内部RAM的 X,丫单元中各存放一个带符号的数,试编程实现按如下条件进行的运 算,并将结果存入Z 单元中。若 X 为正奇数,Z=X+丫 ;若 X 为正偶数,Z=X V 丫;若 X 为负奇数,Z=X A 丫 ;若 X 为负偶数,Z=X 丫。分 析:正 数:第 7 位为0,负数:第 7 位为1 ;奇 数:第 0 位为1,偶 数:第 0 位为0 方法1 :利用ANL指令判断正负、奇偶ORG 0030HMOV A,XANL A,#80H;判断X 正负JNZNEG;若 X 为 负,转 NEGMOV A,X;X 为正ANL A,#01H;判断X 奇偶JZ EVEN1;若X 为偶数,转 EVEN1MOV A,XADD A,Y;若 X 为正奇数,Z=X+丫SJMP RESULTEVEN1:MOV A,XORL A,丫 若 X 为正偶数,Z=X V 丫SJMP RESULTNEG:MOV A,X;X 为负ANL A,#01H;判断X 奇偶JZ EVEN2浴 X 为偶数,转 EVEN2MOV A,XANL A,丫 ;若 X 为负奇数,Z=X A 丫SJMP RESULTEVEN2:MOV A,X;若 X 为负偶数,Z=X 丫XRL A,丫RESULT:MOV 乙 A方法2:RL指令将符号位移入CY判断正负,RR指令将最低位移入CY判断奇偶MOV A,XCLR CRLC AJC NEG;X为 负,转至NEG-FFFF.-FFFFF FXF 一 彳-FFFFF-F.rF-*ff-X-FEF*It IRRC ARRC AJNC EVEN1;X 为偶数,转至 EVEN1MOV A,XADD A,Y;X 为正奇数,Z=X+丫SJMP RETULTEVEN1:MOV A,XORL A,Y;X 为正偶数,Z=X V YSJMP RETULTNEG:RRC A,RRC AJNC EVEN2MOV A,XANL A,Y;X 为负奇数,Z=X A 丫SJMP RETULTEVEN2:MOV A,XXRL A,Y;X 为负偶数,Z=X YRETULT:MOV 乙 AEND4.把一个8 位二进制数的各位用ASCII码表示之(例 如,为 0 的位用30H表 示,为 1的位用31H表示等)。该数存放在内部RAM的 byte单元中。变换后得到的8 个 ASCII码存放在外部RAM以 buf开始的存储单元中,试编程实现。ORG 0030H14MOV DPTR,#bufMOV RO,#byteMOV R7,#08HMOV A,ROCLRCLOOP1:RRCAMOV R6,AJC ONEMOV A,#30HSJMP LOOP2ONE:MOV A,#31HLOOP2:MOVX DPTR,AINC DPTRMOV A,R6DJNZ R7,L00P15.编程实现运算式22 c a b。假定a、b、c 3 个数分别存放于内部RAM的 DA、DB、DC单元中,另有平方运算子程序SQR供调用。ORG 0030HMOV A,DAPUSH ACC-FFF-r-FFFFF F-hF-F-FXF 八 彳-FFFFF-F。r-FXF*ACALLSQRPOP ACCMOV DC,AMOV A,DBPUSH ACCACALLSQRPOP ACCADD A,DCMOV DC,A15SQR:POP ACCMOV B,AMUL ABPUSH ACCRETEND6试编程实现两个ASCII码字符串是否相等。字符串的长度在内部RAM 41H单 元 中,第 1个字符串的首地址为42H,第 2 个字符串的首地址为52H。如果两个字符串相等,则置内部RAM 40H单元为00H;否则置40H单元为FFH。ORG 0030HMOV RO,#42HMOV R1,#52HMOV R7,41HLOOP:MOV A,R0MOV 30H,R1CJNE A,30H,LKINC ROINC R1DJNZ R7,LOOPMOV 40H,#00HSJMP DDLK:MOV 40H,#0FFHDD:SJMP DD7.在外部RAM首地址为table的数据表中,有 10字节数据。试编程实现将每个字节的最高位无条件置1。ORG 0030HMOV DPTR,#tableMOV R6,#10LOOP:MOVX A,DPTR16SETB ACC.7MOVX DPTR,AINC DPTRDJNZ R6,LOOP第 6 章 80C51单片机的中断与定时 a叫1.中断技术是解决资源竞争的有效方法,因 此,可以说中断技术实质上是一种资源(共享)技 术。2.上电复位后,各中断优先级从高到低的次序为(外部中断0)、(定时器/计数器0中 断)、(外部中断1)、(定时器/计数器1 中断)和(串行中断)。3响应中断后,产生长调用指令LCALL,执行该指令的过程包括:首先把(PC)的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送(P C),使程序执行转向(R O M)中的中断地址区。4.当计数器产生计数溢出时,把定时器控制寄存器的 TFO(TF1)位置1。对计数溢出的处理,在中断方式时,该位作为(中断请求标志位)使用;在查询方式时,该位作(查询状态位)使用。5.定时器1工作于方式3 做波特率发生器使用时,若系统晶振频率为12 MHz 可产生的最低波特率为(15.26 b/s),最高波特率为(1000000 b/S。对于12MHz的晶振,一个机器周期为1 S,定时器1做波特率发生器使用时,若工作于方式1,计数初值为0,则波特率最低,为 61 65536 1.0 10 15.26bs若计数初值为65535,则波特率最高,为 1/(1*1.0*10e-6)=1000000b/s6.定时器0 工作于方式2 的计数方式,预置的计数初值为156,若通过引脚T0输入周期为1 ms的脉冲,则定时器0 的定时时间为(100ms)。7.用于定时测试压力和温度的单片机应用系统,以定时器 0 实现定时。压力超限和温度超限的报警信号分别由INTO和 INT1输 入,中断优先顺序为:压力超限一温度超限一定时检测。为 此,中断允许控制寄存器 IE最低3 位的状态应是(1 1 1),中断优先级控制寄存器IP最低3 位的状态应是(101)。8.可利用定时器来扩展外部中断源。若以定时器1扩展外部中断源,则该扩展外中断的中断请求输入端应为(T1)引脚,定时器1应取工作方式(2),预置的计数初值应为(0F F H),扩展外中断的人口地址应为(001B H)。=3.1.下列有关80C51中断优先级控制的叙述中错误的是(D)(A)低优先级不能中断高优先级,但高优先级能中断低优先级(B)同级中断不能嵌套(C)同级中断请求按时间的先后顺序响应(D)同一时刻,同级的多中断请求,将形成阻塞,系统无法响应2.80C51有两个定时器,下列有关这两个定时器级联定时问题的叙述中,正确的是(C)(A)可以实现软件级联定时,而不能实现硬件级联定时(B)可以实现硬件级联定时,而不能实现软件级联定时(C)软件级联定时和硬件级联定时都可以实现(D)软件级联定时和硬件级联定时都不能实现3.在工作方式0 下,计数器由TH的全部8 位和TL的低5 位组成,因 此,其计数范围是(A)(A)1 -8192(B)0-8191(C)0-8192(D)1 -4096由 沙 FCF.A9f.-xFaF*-4.对于由80C51构成的单片机应用系统,中断响应并自动生成长调用指令LCALL 后,应(B)(A)转向外部程序存储器去执行中断服务程序(B)转向内部程序存储器去执行中断服务程序(C)转向外部数据存储器去执行中断服务程序(D)转向内部数据存储器去执行中断服务程序5.中断查询确认后,在下列各种单片机运行情况中,能立即进行响应的是(D)(A)当前正在进行高优先级中断处理(B)当前正在执行RETI指令(C)当前指令是DIV指 令,且正处于取指机器周期(D)当前指令是“MOVA,Rn”指令6.下列条件中,不是中断响应必要条件的是(C)(A)TCON或 SCON寄存器中相关的中断标志位置1(B)IE寄存器中相关的中断允许位置1(C)IP寄存器中相关位置1(D)中断请求发生在指令周期的最后一个机器周期7.在单片机的下列功能或操作中,不使用中断方法的是(D)(A)串行数据传送操作(B)实时处理(C)故障处理(D)存储器读/写操作第6章单片机并行存储器扩展1 .使 用 8KB X 8 位的RAM芯 片,用译码法扩展64KB X 8 位的外部数据存储器,需要(8)片存储芯片,共需使用(16)条地址线,其 中(13)条用于存储单元选择,(3)条用于芯片选择。2.三态缓冲器的三态分别是(低电平)、(高电平)和(高阻抗)。3.80C51单片机系统整个存储空间由4 部分组成,分别为(256)个地址单元的内部(数据)存储器,(4KB)个地址单元的内部(程序)存储器,(64KB)个地址单元的外部(数据)存储器,(60KB)个地址单元的外部(程序)存 储 器。4.在 80c51单片机系统中,为外扩展存储器准备了(16)条地址线,其中低位地址线 由(P0 口)提 供,高位地址线由(P2 口)提供。5.在 80c51单片机系统中,存储器并行外扩展涉及的控制信号有(ALE)、(WR)、(RD)、(PSEN)和(CE),其中用于分离低8 位地址和数据的控制信号是(ALE),它的频率是晶振频率的(6)分之一。6.起止地址为0000H3FFFH的外扩展存储器芯片的容量是(16KB)。若外扩展存储器芯片的容量为2KB,起始地址为3000H 则终止地址应为(37FFH)。7.与微型机相比,单片机必须具有足够容量的程序存储器是因为它没有(外19存)。8.在存储器扩展中,无论是线选法还是译码法,最终都是为扩展芯片的(片选)引脚端提供信号。9.由一片80C51和一片2716组成的单片机最小系统。若 2716片选信号CE接 地,则该存储芯片连接共需(W)条地址线。除数据线外,系统中连接的信号线只有(PSEN)和(ALE)。i=1.下列有关单片机程序存储器的论述中,错误的是(D)(A)用户程序保存在程序存储器中(B)断电后程序存储器仍能保存程序(C)对于程序存储器只使用MOVC 一种指令(D)执行程序需要使用MOVC指令从程序存储器中逐条读出指令2.下列有关单片机数据存储器的论述中,错误的是(A)(A)数据存储器只使用MOV指令进行读/写(B)堆栈在数据存储器中开辟(C)数据存储器只用于保存临时数据(D)专用寄存器也是数据存储器的一部分3.在单片机系统中,1KB表示的二进制位数是(D)(A)1000(B)8X1000(C)1024(D)8X10244.在下列信号中,不是供外扩展程序存储器使用的是(D)(A)PSEN(B)EA(C)ALE(D)WR5.RAM是随机存储器的意思,随机存储器的准确含义是(B)(A)存储器的各存储单元的存取时间相等(B)可以在任何时刻随机读/写存储器内各存储单元(C)随机表示既可读又可写(D)随机是易失的意思,因为随机存储器具有易失的特点6.若在系统中只扩展一片Intel 2732(4KX8位),除应使用P0 口的8 条口线外,20至少还应使用P2 口的口线(A)(A)4 条(B)5 条(C)6 条(D)7 条7.下列叙述中,不属于单片机存储器系统特点的是(D)(A)程序和数据两种类型的存储器同时存在(B)芯片内外存储器同时存在(C)扩展数据存储器与片内数据存储空间重叠(D)扩展程序存储器与片内程序存储空间重叠8.在 80c51单片机系统中,为解决内外程序存储器衔接问题所使用的信号是(A)(A)EA(B)PSEN(C)ALE(D)CE第 7 章单片机并行I/O扩展-1.80C51单片机I/O扩展占据的是(外部数据)存储器的地址空间,因 此,其扩展连接只涉及(A L E)、(W R)和(RD)3 个控制信号。2.在单片机中,为实现数据的I/O传 送,可使用3 种控制方式,即(无条件)方式、(查询)方式和(中断)方式。其中效率较高的是(中断方式)。3.简单输入口扩展是为了实现输入数据的(缓冲)功能,而输出口扩展是为了实现输出数据的(锁存)功能。第 8 章 80C51单片机串行通信1-)1.异步串行数据通信的帧格式由(起始)位、(数 据)位、(奇偶校验)位、(停止)位组成。若串行异步通信每帧为11位,串行每秒传送250个字符,则波特率应为(2750b/S。2.串行通信有(单工)、(双工)和(半双工)共 3 种数据通路形式。3.串行接口电路的主要功能是(串行)化 和(反串行)化,把帧中格式信息滤21除而保留数据位的操作是(反串行)化。4.串行异步通信,传送速率为2400 b/s,每帧包含1个起始 位、7 个数据位、1 个奇偶校验位和1个停止位,则每秒传送字符数为(240个)。5.80C51串行口使用定时器1作波特率发生器时,应定义为工作方式2,即(8 位自动加载)方式。假定晶振频率为12MHz,则可设定的波特率范围是(122 b/s)(62500b/s)。分 析:定时器1工作方式2 时的波特率为:SMODSMOD osc 22 32 132 12 256fX波特率定时器溢出率当 SMOD=0,X=0 时,61 12 1012232 12 256b s波特率(最小波特率)当 SMOD=1,X=255 时,62 12 106250032 12 1 bs波特率(最大波特率)6.在 80c51串行通信中,方 式(0)和方式(2)的波特率是固定的,波特率的大小只与(晶振)频率有关。而方式(1)和方式(3)的波特率是可变或可设置的,波特率大小与定时器(T1)的(溢出)率有关。|=1.下列特点中,不是串行数据传送所具有的是(A)(A)速度快(B)成本低(C)传送线路简单(D)适用于长距离通信2.下列有关串行同步通信与异步通信的比较中,错误的是(B)(A)它们采用的是相同的数据传输方式,但采用不同的数据传输格式(B)它们采用的是相同的数据传输格式,但采用不同的数据传输方式(C)同步方式适用于大批量数据传输,而异步方式则适用于小批量数据传输(D)同步方式对通信双方同步的要求高,实现难度大,而异步方式的要求则相对较低3.调制解调器的功能是(A)(A)数字信号与模拟信号的转换22(B)电平信号与频率信号的转换(C)串行数据与并行数据的转换(D)基带传输方式与频带传输方式的转换4.帧格式为1个起始位、8 个数据位和1个停止位的异步串行通信方式是(B)(A)方式0(B)方式1 (C)方式2(D)方式3 5.通过串行口发送或接收数据时,在程序中应使用(A)6)1/10丫指令(8)MOVX指 令(C)MOVC指 令(D)SWAP指令6.下列有关第9 数据位的说明中,错误的是(C)(A)第 9 数据位功能可由用户定义(B)发送数据的第9 数据位内容在SCON寄存器的TB8位中预先准备好(C)帧发送时使用指令把TB8位的状态送入发送SBUF中(D)接收到的第9 数据位送SCON寄存器的RB8位中保存7.下列有关串行通信的说明中,错误的是(A)(A)80C51串行口只有异步方式而无同步方式,因 此,只能进行串行异步通信(B)80c51串行口发送和接收使用同一个数据缓冲寄存器SBUF(C)双机通信时要求两机的波特率相同(D)偶校验是指给校验位写入一个0 或 1,以使得数据位和校验位中1的个数为偶科 M Mnf.