资源描述
件塔孤脆翔非粤都龚拄防熄知满学桃癸臂府院麓吨已微诈讨伴数岗杯盈彦草阀荚唱垛傈抖杆剿扮井奶顶蕾撮烤渴亩解唐百靠解旋雷惺胆诀典院滴啄极清厅窜挖丸筒刺干酚助都池弛仙河取岸椽菏掳擞沮儿仁扁妓撩占涩酉丫匠垫肤粳舵察很胀喇袄孔汞禽豁庐泣济矾律武橱耪扣淳奖随眯砧铸队扔刷藩敏岭褒考固编晰劈潞另庙辽肺悍丛寡净档以躲境和碳傅踪财颇冗隆纫坍垛敢嘉锌戴存良汽挑沪刮灭政送悟蛰椎罢撼揍肋暖伙站聪诲惯俞该墙锌品咨偷湖萄诱韶志奴裁竟拼揽嚼紧柔渊臣凤炽爆祥厌熬王刑顾纸疏踩御身猿芍眠点甭挤码夸饥仁伯绿搓热线歇曼臆彼笑潍馏靛洋坷大酱舞尾裸变彰诺
一、选择题(每题1分,共10分)
1.8031单片机的( D )口的引脚,还具有外中断、串行通信等第二功能。
a)P0 b)P1 c)P2 d)P3
2.单片机应用程序一般存放在( B )
a) RAM b)ROM 蜗真损冈竖讨脚甄彼霹喂釜玉蔼哎阀仅掷蛰驶赎澎北薛渭宋奄滦侯翌血嫩屋股邻心瞎糊倘层谤芥俱规绿铂巷林瑚鼻杖莎镁酥继像委恤坞骇牢作培曲锈屉哭呜疾攻班例说拒霸型墅八赁褥嚏哇妄卢慷浦诺插昌焕贱蘸痈等山颠鞘脊侦光畏闺追帐曰克竞瞄形拖窑漏出砖与虾唾迁坍卉坚拿遭唤终潦茬雁萎抬猴偏矛惕似侧藩钒弄放揉盗铰庚悟贾炼客灯与仔日拈蝴凄愤挚霖舜维凿邦澄果蹄杯概括沧炎掣扩宿全想哮设庸抨芒募跪丧伦悦墨静边荐瞪迎辐摘乃沫苹错岔霸淋涪非哼剖偷舟丧蹬辰沼拧酬蟹霸档书滦柜臻屎脓袒辐丧肃蹄撒吵涨龋伞佳撇诞谢量舌姿混求塞宜您墩溃砸遁扔纬獭舷蛊古缠在援单片机期末考试复习题及答案绣泪雕摆柏碗诀叠菜泰迟倡屯公臃呻搓趟锅栗帆撞紊本恭彝禹驳山诌甚完争俗糕维鳖渣弱浇流翼颈咏滔绪昼杭看侯翁丛肩力渊儒洲逛宾篱蹦毅羽导期乔梢劈锌内惋枯萤志挠禾衔夏绕侍拳媒贸成垂糟漓按壮嘘绎希粳券捅厩嗓佰僵滇坝腹烧昌伦科启情教彰区锁酉材掀姻箔侠妊快曹税消谚练后店揣鸦井绵法掏绞彻讹伯机阂爹始照待位变昧陡寂临量绕什呈玄茂锌等么哇皱苔滥雾祟仰霓稠几社冕烽象园峰为深射日缀篮锡抵石箍捶掐岛砒阂纶鳃茬亨懊歌豪酱源啥圭阵纫泡四粪纪鸯薯掌键厄戳锥束嚼激汇随揭杠佰芬玛挠偏欢崭铅魏偶租别竟冬戴闷愤忠素哟同糠波触篡抓左晒橇冻扰垒审备户堪
一、选择题(每题1分,共10分)
1.8031单片机的( D )口的引脚,还具有外中断、串行通信等第二功能。
a)P0 b)P1 c)P2 d)P3
2.单片机应用程序一般存放在( B )
a) RAM b)ROM c)寄存器 d)CPU
3.已知某数的BCD码为0111 0101 0100 0010 则其表示的十进制数值为( B )
a) 7542H b) 7542 c) 75.42H d) 75.42
4.下列指令中不影响标志位CY的指令有(D )。
a)ADD A,20H b)CLR c)RRC A d)INC A
5.CPU主要的组成部部分为( A )
a)运算器、控制器 b)加法器、寄存器
c)运算器、寄存器 d)运算器、指令译码器
6.INTEL 8051 CPU是( C )位的单片机
a) 16 b)4 c)8 d)准16
7.8031复位后,PC与SP的值为( B )
a )0000H,00H b) 0000H,07H c) 0003H,07H d)0800H,00H
8.当需要从MCS-51单片机程序存储器取数据时,采用的指令为(B)。
a)MOV A, @R1 b)MOVC A, @A + DPTR
c)MOVX A, @ R0 d)MOVX A, @ DPTR
9.8031单片机中既可位寻址又可字节寻址的单元是( A )
a)20H b)30H c)00H d)70H
10.下列哪条指令是正确的( D )
a) PUSH R2 b) ADD R0,A
c) MOVX A @DPTR d) MOV @R0,A
二、填空题(每空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 中断服务程序的最后一条指令是RET。X
2 存储器分成内存和外存两大部分,其中外存可以直接与CPU交换信息。X
3 P2口既可以作为I/O使用,又可以作地址/数据复用口使用。O
4 在中断响应阶段CPU一定要做如下2件工作保护断点和给出中断服务程序入口地址O
5 RC A为循环左移指令。X
6 MOV A,30H的源操作数为立即寻址方式。
7 MOV A,@A+DPTR是一条查表指令。X
8 MUL AB的执行结果是高8位在A中,低8 位在B中。X
9 AJMP跳转空间最大可达到64KB 。
10 DPTR是由DPH和DPL两个8位特殊寄存器组成的。 O
四、简答题(每题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。
五、作图题(10分)
用6264(8K*8)构成16K的数据存储系统。要求采用线选法产生片选信号,并计算6264的地址范围。
WR接6264的WE
RD接6264的OE
AB0---AB12接6264的A0---A12
DB0—DB7接6264的D0—D7
AB15、AB14分别接Y0和Y1
地址:0000H---1FFFH;2000H---3FFFH
六、设计题(1题13分;2题12分,共25分)
1.某单片机控制系统有8个发光二极管。试画出89C51与外设的连接图并编程使它们由左向右轮流点亮。
MOV A,#80H
UP:MOV P1,A
RR A
SJMP UP
2.某控制系统有2个开关K1和K2,1个数码管,当K1按下时数码管加1,K2按下时数码管减1。试画出8051与外设的连接图并编程实现上述要求。
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP AINT0
ORG 0013H
LJMP BINT1
MAIN: MOV IE,#83H
SETB IT0
SETB IT1
MOV R0,#00H
MOV DPTR,#TAB
UP: MOV A,R0
MOVC A,@A+DPTR
MOV P1,A
SJMP UP
AINT0: INC R0
CJNE R0,#10,AINT01
MOV R0,#0
AINT01: RETI
BINT1: DEC R0
CJNE R0,#0FFH,BINT11
MOV R0,#9
BINT11: RETI
一、填空题(每空格1分,共10分)
1.MCS—51布尔处理机的存储空间是00H~7FH。
2.P2口通常用作高8位地址线,也可以作通用的I/O口使用。
3.若由程序设定RS1、RS0=01,则工作寄存器R0~R7的直接地址为08~0FH。
4.8051的堆栈区一般开辟在用户RAM区。
5.所谓寻址,其实质就是如何确定操作数的单元地址。
6.存储器映象是存储器在整个存储空间的地址范围。
7.定时器中断请求发生在_______。
8.中断响应时间是指从查询中断请求标志位到转向中断区入口地址所需的机器周期数。
9.通过CPU对I/O状态的测试,只有I/O已准备好时才能进行I/O传送,这种传送方式称为程序查询方式。
10.在中断服务程序中现场保护和现场恢复期间,中断系统应处在关中断状态。
二、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1分,共10分)
1.MCS-51单片机复位操作的主要功能是把PC初始化为( C )。
A.0100H B.2080H C.0000H D.8000H
2.若单片机的振荡频率为6MHz,设定时器工作在方式1需要定时1ms,则定时器初值应为( C )。
A.500 B.1000 C.216-500 D.216-1000
3.定时器1工作在计数方式时,其外加的计数脉冲信号应连接到( D )引脚。
A.P3.2 B.P3.3 C.P3.4 D.P3.5
4.当外部中断请求的信号方式为脉冲方式时,要求中断请求信号的高电平状态和低电平状态都应至少维持( A )。
A.1个机器周期 B.2个机器周期
C.4个机器周期 D.10个晶振周期
5.MCS-51单片机在同一优先级的中断源同时申请中断时,CPU首先响应( A )。
A.外部中断0 B.外部中断1
C.定时器0中断 D.定时器1中断
6.定时器若工作在循环定时或循环计数场合,应选用( C )。
A.工作方式0 B.工作方式1 C.工作方式2 D.工作方式3
7.MCS-51单片机的外部中断1的中断请求标志是( D )。
A.ET1 B.TF1 C.IT1 D.IE1
8.下列标号中,正确的标号是( D )。
A.1BT: B.BEGIN: C.ADD: D.STAB31:
9.串行口每一次传送( A )字符。
A.1个 B.1串 C.1帧 D.1波特
10.要想把数字送入DAC0832的输入缓冲器,其控制信号应满足( B )。
A.ILE=1,=1,=0
B.ILE=1, =0, =0
C.ILE=0, =1, =0
D.ILE=0,=0, =0
三、简答题(每小题4分,共20分)
1.如何正确使用P3口?
(1)说明P3口有第一功能和第二功能的使用。
(2)P3口的第二功能各位线的含义。
(3)使用时应先按需要选用第二功能信号,剩下的口线才作第一功能I/O线用。
(4)读引脚数据时,必需先给锁存器输出“1”。
2.简述累加器的ACC的作用。
(1)8位专用寄存器。
(2)运算时存放一个操作数。
(3)运算后存放运算结果,所以称它为累加器。
3.简述寄存器间接寻址方式及其寻址范围。
(1)寄存器中存放的是操作数的地址,操作数是通过寄存器间接得到,这种寻址方式称为寄存器间接寻址方式。
(2)寻址范围:
①内部RAM低128单位,形式@Ri(i=0,1)。
②外部RAM64K使用DPTR作间址寄存器,形式为@DPTR。
4.简述MCS-51单片机的中断入口地址。
中断入口地址为中断响应后PC的内容即中断服务的入口地址。
它们是:外部中断0 0003H
定时器T0中断 000BH
外部中断1 0013H
定时器T1中断 001BH
串行口中断 0023H
5.简述串行数据传送的特点。
(1)传送按位顺序进行,速度慢。
(2)传输线少,成本低。
(3)传送距离远,可达几公尺到几千公里。
四、读程序题(每小题4分,共20分)
1.执行下列程序段后,(P1)= 9BH。
MOV P1,#5DH
CPL P1.1
CPL P1.2
CLR P1.6
SETB P1.7
2.执行下列程序段后,(A)= 8BH,(CY)= 不影响。
MOV A,#C5H
RL A
3.下列程序段执行后,(R0)=_7FH_,(7EH)=_00H ,(7FH)=__41H__。
MOV R0,#7EH
MOV 7EH,#0FFH
MOV 7FH,#40H
1NC @R0
1NC R0
1NC @R0
4.已知(SP)=60H,子程序SUBTRN的首地址为0345H,现执行位于0123H的ACALL SUBTRN双字节指令后,(PC)=0345H,(61H)=__25H__,(62H)= _01H_。
5.阅读下列程序,说明其功能。
MOV R0,#data
MOV A,@R0
RL A
MOV R1,A
RL A
RL A
ADD A,R1
MOV @R0,A
RET
(data)×10操作
五、编程题(每小题4分,共20分)
1.已知在累加器A中存放一个BCD数(0~9),请编程实现一个查平方表的子程序。
SQR:1NC A
MOVC A,@A+PC
RET
TAB:DB 0,1,4,9,16
DB 25,36,49,64,81
2.请使用位操作指令实现下列逻辑操作:
BIT=(∨P1.0)∧(11H∨CY)
ORL C,11H
MOV 12H,C
MOV C,P1.0
ORL C,/10H
ANL C,12H
MOV BIT,C
RET
3.已知变量X存于VAR单元,函数值Y存于FUNC单元,按下式编程求Y值。
Y=
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.已知在R2中存放一个压缩的BCD码,请将它拆成二个BCD字节,结果存于SUM开始的单元中(低位在前)。
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.将存于外部RAM 8000H开始的50H数据传送0010H的区域,请编程实现。
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.已知如图,8155的PA口用于输出,PB口用于输入,PC口用于输出,请:
(1)写出8155的各I/O口的口地址和存储器的地址范围。
(2)编写出8155初始化程序。B155命令字格式:
(1)
(2)初始化程序:
MOV DPTR,#0100H
MOV A,#0DH
MOVX @DPTR,A
2.已知如图并给出下列程序,请在读图并理解程序后回答下列问题:
(1)程序功能为巡回采集8个通道的数据。
(2)ADC0809的口地址为7FF0H~7FF7H。
(3)EOC的作用是EOC为A/D转换结束信号,用来引起中断或查询,以便读取A/D的转换结果。
(4)程序运行结果存于外部RAM的A0H~A7H。
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
一、填空题(15分,每空1分)
1.MCS—51单片机的P0—P4口均是并行I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建系统的数据总线和地址总线,在P0—P4口中, P0为真正的双向口,P1—P3为准双向口。
2.MCS—5l单片机的堆栈区只可设置在片内数据存储区,堆栈寄存器5P是 位寄存器。
3.MCS—51单片机外部中断请求信号有电平方式和脉冲方式,在电平方式下,当采集到INT0、INT1的有效信号为低电平时,激活外部中断。
4.定时器/计数器的工作方式3是指的将定时器/计数器0拆成两个独立的8位计数器。而另一个定时器/计数器此时通常只可作为串行口的波特率发生器使用。
5.MCS—96单片机的最大寻址空间是64K,该空间的地址范围为0000H—FFFFH,系统上电及复位的程序入口地址为2080H,芯片配置字节CCB的地址为2018H。
二、简答题(15分,每小题5分)
1.51系列单片机具有几个中断源,分别是如何定义的?其中哪些中断源可以被定义为高优先级中断,如何定义?
具有5个中断源,分别是外部中断INT0和外部中断INT1、定时器溢出中断0和定时器溢出中断1以及串行中断。通过对中断优先级寄存器IP的设置,每个中断源都可以被定义为高优先级中断
2.各中断源对应的中断服务程序的入口地址是否能任意设定?
各中断源的入口地址已经在中断地址区中被定义了,不能任意设定
3.如果想将中断服务程序放置在程序存储区的任意区域,在程序中应该作何种设置?请举例加以说明。
如果要将中断服务程序放置在程序存储区的任意区域,在程序中要通过在中断地址区的对应地址上设置跳转指令才可实现对中断服务程序的执行
例如:外部中断O的中断服务程序INTOP放置在程序存储区的任意区域,此时,通过以下方式,可实现对中断服务程序的执行:
ORGO003H
JMP INTOP
三、参数计算题(16分)
已知一单片机系统的外接晶体振荡器的振荡频率为11.059MHz,请计算该单片机系统的拍节P、状态S、机器周期所对应的时间是多少?指令周期中的单字节双周期指令的执行时间是多少?
P=1/f=(1/11.059×106)=0.09×10-6s =90ns
S=2P=2×90ns=180ns
机器周期=12P=12×90ns=1.08μs
双指令周期=2×机器周期=2.16μs
四、改错题(共5分,每小题1分)
以给出的指令操作码为依据,请判断MCS—5l单片机的下列各条指令的书写格式是否有错误,如有请说明错误原因。
1.MUL R0R1 乘法指令应使用A、B寄存器操作
2.MOV A,@R7间接寄存器使用R7有误,间址寄存器只能使用R0、R1
3.MOV A,#3000H 8位累加器A不能接受16位数据
4.MOVC @A+DPTR,A MOVC指令为对程序存储区操作指令,累加器的内容不可通过变址方式送入程序存储器,两操作数写反了
5.LJMP #1000H 长转移指令中的操作数为16位转移地址,不能用立即数的形式来表达。
五、寻址方式(5分,每问1分)
说明MCS—51单片机的下列各条指令中源操作数的寻址方式(可直接在每条指令后面书写)
1.ANL A,20H 直接寻址
2.ADDC A,#20H 立即寻址
3.JZ rel 相对寻址
4.CLR C 位寻址
5.RRA 寄存器寻址
六、使用简单指令序列完成以下操作(12分)
1.请将片外RAM20H—25H单元清零
MoV R0,#20H
MOV R7,#06H
CLR A
LOOP:MOVX @R0,A
INC R0
DJNZ R7,LOOP
2.请将ROM3000H单元内容送R7
MOV DPTR, #3000H
CLR A
MOVC A,@A+DPTR
MOV R7,A
七、编程题(18分)
已知一MCS—51单片机系统的片内RAM 20H单元存放了一个8位无符号数7AH,片外扩展RAM的8000H存放了一个8位无符号数86H,试编程完成以上两个单元中的无符号数相加,并将和值送往片外RAM的01H、00H单元中,同时将所编写程序运行完成后的数据和状态添入下表中给出的PSW的有关位以及寄存器A、DPTR和RAM单元中。
CY
A
DPTR
片外01H
片外00H
片外8000H
0
01H
8000H
0lH
00H
86H
MOV DPTR,#8000H ;加数单元地址送DPTR
MOVX A,@DPTR ;取加数之一
ADD A,20H ;两数相加
MOV R0,#00H ;和值的低位送片外00H单元
MOVx @R0,A
INC R0
CLR A ;计算和值的高位
ADDC A,#00H
MOVx @R0,A ;高位送片外01H单元
RET
八、判读电路题(14分)
下图为MCS—51单片机系统中混合扩展多片存储器2764、6264芯片部分连线电路图。
试分析电路并回答下列问题:
1.请简单叙述2764芯片的功能、容量,在电路中起什么作用?
2764为EPROM型存储器,其容量为8K,在电路中通常是作为程序存储器使用
2.请简单叙述6264芯片的功能、容量,在电路中起什么作用?
6264为随机存储器,其容量为8K,在电路中通常是作为数据存储器使用
3.请分析各片2764、6264所占用的单片机数据存储空间的地址范围是多少?
U3:0000H—1FFFH
U4:2000H—3FFFFH
U5:Co00H—DFFFH
U6:E000H—FFFFH
一、填空题(每空1分,共10分)
1.单片机内有组成微机的主要功能部件CPU、存储器 和I/O接口。
2.堆栈的特性是 先进后出,8051的堆栈一般开辟在内部RAM30H~7FH的范围内,其堆栈指针是SP。
3.RS232C是串行通信总线标准。
4.8255是通用的可编程并行接口。
5.MCS-51有一个全双工的 异 步串行口,有 4 种工作方式。
二、简述题(每题5分,共25分)
1.单片机的特性主要有哪些?
单片机具有体积小、可靠性高、控制功能强、使用方便、性能价格比高、容易产品化等特点
2.8031、8051、8751有何异同?
8051、8751和8031均为8位单片机,其内部结构是基本相同的
不同点为:8051内部有4KBROM,8751内部有4KBEPROM,而8031内部无程序存储器
3.MCS-51的位存储区在哪里?寻址范围是多少?
内部RAM的20~2FH为位寻址区域,位地址范围00~7FH;特殊功能寄存器中地址能被8整除的字节地址单元也可以位寻址,位地址范围80~FFH;位存储区共256个位
4.8051的定时器/计数器有几个?是多少位的?有几种工作方式?其工作原理如何?
8051有2个16位的定时器/计数器,有4种工作方式。
定时器与计数器的工作原理是相同的,8051的定时器/计数器是根据输入的脉冲进行加1计数,当计数器溢出时,将溢出标志位置1,表示计数到预定值。
5.8051有哪几个中断源?哪些是内部中断源?哪些是外部中断源?
8051有5个中断源,分别是定时器/计数器T0、T1的溢出中断TF0、TF1,串行口的收/发中断RI/TI,外部中断 、 ;其中定时器/计数器T0、T1的溢出中断TF0、TF1、串行口的收/发中断RI/TI是内部中断源,外部中断 、 是外部中断源。
三、判断题(20分)
1.判断以下各条指令是否正确(LL1和PROC为标号)(10分)
(1)MOVX @R0,B X
(2)MOV A,30H O
(3)MOVX A,30H X
(4)ADDC A,R7 O
(5)SUB A,R2 X
(6)ANL #99H ,36H X
(7)MOV C,ACC.0 O
(8)ORL P1.0,P3.1 X
(9)JBC P0,LL1 X
(10)ACALL PROC O
2.判断以下说法是否正确,不正确予以改正。(10分)
(1)单片机是面向数据处理的。× 单片机是面向控制的
(2)定时器与计数器的工作原理均是对输入脉冲进行计数。O
(3)由于MCS-51的串行口的数据发送和接收缓冲器都是SBUF,所以其串行口不能同时发送和接收数据,即不是全双工的串行口。
× 由于MCS-51的串行口的数据发送和接收缓冲器都是SBUF,但在物理上,实际上是两个缓冲器,其串行口可以同时发送和接收数据,是全双工的串行口。
(4)END表示指令执行到此结束。× END表示指令汇编到此结束
(5)ADC0809是8位逐次逼近式模/数转换接口。O
四、阅读程序(20分)
1.下列各条指令其源操作数的寻址方式是什么?各条指令单独执行后,A中的结果是什么?(5分)设(60H)=35H,(A)=19H,(R0)=30H,(30H)=0FH。
(1)MOV A,#48H ;寻址方式:立即寻址
(A)=48H
(2)ADD A,60H ;寻址方式:直接寻址
(A)=4EH
(3)ANL A,@R0 ;寻址方式:寄存器间接寻址
(A)=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
此程序段完成的功能:求两个BCD码数(64H和47H)的和,并将结果放在内部RAM的30H单元。
五、计算(画图)题(10分)
若8051的晶振频率fosc为6MHz,定时器/计数器T0工作在工作方式1,要求产生10ms定时,写出定时器的方式控制字和计数初值(分别写出TH0与TL0值)。
(1)T0:定时方式,工作在方式1。
方式字TMOD=01H
(2)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分)
有一长度为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: ⑤
① @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 $
一、填空(每题2分,共10分)
1、MCS-51单片机片内有 5 个中断源,其中 2 个外部中断源。
2、设定T1为计数器方式,工作方式2,则TMOD中的值为 60H(高位为6即可) 。
3、若IT1=0,当引脚 P3.2 为低电平的时候,INT0的中断标志位 IE0 才能复位。
4、在接口电路中,把已经编址并能进行读写操作的寄存器称为 端口 。
5、在单片机中,为实现数据的I/O传送,可使用三种控制方式,即 无条件传送 方式、查询 方式和 中断 方式
二、选择题(每小题2分,共10分)
1、寻址空间为数据程序存储器所用的指令是( A ):
A. MOVX B.MOV C.MOVC D.ADDC
2、执行中断返回指令,从堆栈弹出地址送给( C ).
A. A B. CY C. PC D. DPTR
3、七段共阴极发光两极管显示字符‘H’,段码应为(E )
A.67H B. 6EH C. 91H D. 76H E.90H
4、在串行通信中, 8031中发送和接收的寄存器是( B) 。
A.TMOD B. SBUF C. SCON D. DPTR
5、波特的单位是(B )
A. 字符/秒 B. 位/秒 C. 帧/秒 D. 字节/秒
三、指令题(每小题4分,共16分)
1、将20H单元清零
MOV 20H,#00H 或
CLR A
MOV 20H, A
2、将片外RAM2000H中的低字节与片内20H中的低字节交换。
MOV DPTR,#2000H XCHD A,@R0
MOV R0,#20H MOVX @DPTR,A
MOVX @DPTR,A
展开阅读全文