ZJJ单片机题库.docx

上传人:b****6 文档编号:7275747 上传时间:2023-01-22 格式:DOCX 页数:16 大小:22.69KB
下载 相关 举报
ZJJ单片机题库.docx_第1页
第1页 / 共16页
ZJJ单片机题库.docx_第2页
第2页 / 共16页
ZJJ单片机题库.docx_第3页
第3页 / 共16页
ZJJ单片机题库.docx_第4页
第4页 / 共16页
ZJJ单片机题库.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

ZJJ单片机题库.docx

《ZJJ单片机题库.docx》由会员分享,可在线阅读,更多相关《ZJJ单片机题库.docx(16页珍藏版)》请在冰豆网上搜索。

ZJJ单片机题库.docx

ZJJ单片机题库

郑州经济管理干部学院

(1)

一.填空:

(每空一分)

1.单片机中cpu主要由(运算器)和(控制器)组成。

2.通常单片机上电复位时pc=(0000H),sp=(07H),通用寄存器则采用第(0)组,这一组寄存器的地址范围是从(00H)~(07H).

3.MCS一51可提供(数据)和(程序)两种存储器,最大存储空间可达(64K).

4.堆栈遵循(先进后出)的数据存储原则,

5.配和实现“程序存储自动执行”的寄存器是(程序计数器),对其操作的一个特别之处是(每取完一字节指令后PC值自动加1)。

6.补码数80H和7FH的真值分别为(-128)和(127)。

7.12根地址线可选(4K)个存储单元,32KB存储单元需要(13)根地址线

8.MCS—51单片机中扩展I/O口占用片外(数据)存储器的地址空间。

9.假定(SP)=62H,(61)=30H,(62)=70H,执行下列指令:

POP    DPH

POP    DPL

后,DPTR的内容为(7030H ),SP的内容为(60H )。

二、阅读并分析程序(每题10分)

1.以下程序段执行后,A=( 6EH),(30H)=(EEH)。

MOV  30H, #0A4H

MOV  A, #D6H

MOV  R0, #30H

MOV  R2,#5EH

ANL  A, R2

ORL  A, @R0

SWAP A

CPL  A

XRL  A, #0FEH

ORL  30H,A

2..以下程序段执行后,(40H)=(5EH),(41H)=(69H)。

CLRC

MOVA,#56H

SUBBA,#F8H

MOV40H,A

MOVA,#78H

SUBBA,#0EH

MOV41H,A

3.设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A

R0和内部RAM中50H,51H单元的内容为何值?

MOVA,59H

MOVR0,A

MOVA,#00H

MOV@R0,

AMOVA,#25H

MOV51H,A

MOV52H,#70H

答:

A=25HR0=50H(50H)=00H(51H)=25H

4.试说明下列指令的作用,

执行最后一条指令对PSW有何影响?

A的终值为多少?

MOVR0,#72H

MOVA,R0

ADDA,#4BH

答:

A=DBHPSW中P=0,OV=0,CY=0

5.请填写程执行结果。

己知执行前有A=02H、SP=40H、(41H)=FFH、(42H)=FFH,程序如下:

POPDPH

POPDPL

MOVDPTR,#3000H

RLA

MOVB,A

MOVCA,@A+DPTR

PUSHACC

MOVA,B

INCA

MOVCA,@A+DPTR

PUSHACC

RET

ORG3000H

DB10H,80H,30H,80H,50H,80H

程序执行后:

A=(80H),SP=(40H),(41H)=(50H),(42H)=(80H),

PC=(8050H).

三、简答和编写程序(每题8分)

1.堆栈区与一般的数据存储区有何异同?

其重要作用是

什麽?

答:

相同之处:

都属于存储器的一部分,都能存放数据。

不相同之处:

一般存储器使用随机读/写规则,而堆栈使用先进后出规。

可以完成子程序调用或中断调用,多级子程序嵌套等功能。

堆栈区内的存储单元也可以使用读/写指令,但在那种情况下已经不把该单元当做堆栈看待了。

2.MCS—51有几个中断源?

各在什麽情况下产生中断申请?

各中断地址区如何?

答:

MCS—51单片机有五个中断源。

第一个是外中断0提出中断请求,地址区为0003H~000AH.

第二个是定时器/计数器0提出中断请求,地址区为000H~0012H.

第三个是外中断0提出中断请求,地址区为0013H~001AH.

第四个是定时器/计数器0提出中断请求,地址区为001B~0022H.

第五个是串行中断提出中断请求,地址区为0023H~002AH

3.有哪几种方法能使单片机复位?

 复位后各寄存器的状态如何?

 复位对内部RAM有何影响?

答:

3.MCS—51单片机有上电自动复位和按扭复位两种方法能使单片机复位。

复位主要是把PC初始化为0000H,使单片机从程序存储器的0000H单元开始执行程序。

此外,复位还对其它一些特殊功能寄存器有影响,其影响是除SP=07H,P0~P3

四个锁存器均为FFH外,其它所有的寄存器均为0。

复为不影响内部RAM的状态(包括通用寄存器Rn)

4.单片机系统中的定时和计数功能有何区别?

分别适用于什麽场合?

简述工作原理。

4.“定时”功能是对片内稳频脉冲(是晶振频绿的1/12)的计数,从计数开始到计满溢出为止,可以由计数值×稳频脉冲周期来得到一个准确的时间值,而“计数”功能则是对单片机引脚上的外来随机脉冲进行计数,一般情况下难以折数为精确时间。

定时功能适用于需要准确计量一才段时间的场合,而计数功能适用于对外部事件的计数。

在单片计内,定时和计数的实现都是借助一个加1计数器,工作原理基本一样,只是定时方式下计数脉冲为Fcso/12,计数方适下的计数脉冲为由单片计外引脚(T0或T1

)来数入。

5.编程将片内40H~60H单元中内容送到以3000H为首的存储区中。

答:

MOVR1,#40H

MOVR0,#20H

MOVDPTR,#3000H

L1:

MOVA,@R1

INCR1

INCDPTR

DJNZR0,L1

郑州经济管理干部学院(3)

一填空:

(每空一分)

4.在MCS一51单片机系统中,当某中断源发出中断请求,单片机予以响应时,它必须处于(源允许)和(总允许)两级开中断状态。

5.CPU寻址外设端口地址的方法有(统一)编址和(独立)编址两种。

7.假定(A)=85H,(R0)=20H,(20H)=0AFH,执行下列指令:

ADD   A,@R0

后,累加器A的内容为(34H),CY的内容为

(1),AC的内容为     

 

(1),OV的内容为

(1)。

二、阅读并分析程序(每题10分)

5.请填写程序执行结果。

已知A=0AH.

ADDA,#0F4H

JBOV,GOE

JNBACC.7,GOP

CPLA

INCA

SETB20H.0

RET

GOP:

CLR20H.0

RET

GOE:

MOVA,#0FFH

RET

程序执行后:

A=(02H),20H.0=

(1)

三、简答和编写程序(每题8分)

5.设有两个长度均为15的数组,分别存放在以2000H和2100H为首的存储区中,试编程

求其对应项之和,结果存放在以2200H为首的存储区中。

答:

MOVDPTR,#2000H

MOVR1,#15

L1:

MOVDPH,#20H

MOVXA,@DPTR

MOVR2,A

MOVDPH,#21H

MOVXA,@DPTR

ADDA,R2

MOVDPH,#22H

MOVX@DPTR,A

INCDPL

DJNZR1,L1

SJMP$

郑州经济管理干部学院(4)

一填空:

(每空一分)

4.中断请求信号有(电平)触发和(脉冲)触发两种方式。

5.若系统晶振频为12MHz,则T0工作于定时和计数方式时的最高(计数)信号频分别为(1000)kHz和(500)kHz。

二、阅读并分析程序(每题10分)

4.试说明下列指令的作用,分析当指令执行完后,R0中的内容是什麽?

MOVR0,#0A7H

XCH A,R0

SWAP  A

XCH  A,R0

答:

R0=7AHA=0

5.下述程序执行后,请问SP=(40H),A=(30H),B=(30H)

MOVSP,#40H

MOVA,#30H

LCALLSUBR

ADDA,#10H

BACK:

MOVB,A

L1:

SJMPL1

BABR:

POPDPH

POPDPL

MOVDPTR,#AGI

PUSHDPL

PUSHDPH

RET

三、简答和编写程序(每题8分)

5.将片外数据存储器地址为1000H~1030H的数据块,全部搬迁到片内RAM30H~60H中,并将原数据块区全部清0。

答:

5.MOVDPTR,#1000H

MOVR1,#30H

MOVR0,#30H

L1:

MOVXA,@DPTR

MOV@R0,A

MOVA,#0

MOVX@DPTR,A

INCDPL

INCR0

DJNZR1,L1

SJMP$

郑州经济管理干部学院(5)

填空:

(每空一分)

4.若单片机晶振频为6MHz,则时钟周期为(1/3us),机器周期为(2us),最短和最长的指令周期分别为(3)和(8)。

6.假定(A)=0FFH,(R3)=0FH,(30H)=0F0H,(R0)=40H,

  (40H)=00H。

执行下列指令:

     INC  A

     INC  R3

     INC   30H

     INC   @R0

 后,累加器A的内容为(),R3的内容为(),30H的内容为(),30H的内容为(     ),40H的内容为(     )。

(答案貌似不对,仅供参考6.00H10H0F1H01H)

二、阅读并分析程序(每题10分)

4.已知:

A=0C9H,B=8DH,CY=1。

执行指令“ADDC  A,B”结果如何?

执行指令“SUBB  A,B”结果如何?

答:

A=57HOY=1OV=1AC=1P=1

A=3BHCY=0AC=1OV=1

5.设R0=20H,R1=25H,(20H)=80H,(21H)=A0H,(25H)=A0H,

(26H)=6FH,(27H)=76H,下列程序执行后,结果如何.

CLRC

MOVR2,#3

LOOP:

MOVA,@R0

ADDCA,@R1

MOV@R0,A

INCR0

INCR1

DJNZR2,LOOP

JNCNEXT

MOV@R0,#01H

SJMP$

NEXT:

DECR0

SJMP$

(20H)=(20H),(21H)=(00H),(22H)=(17H),(23H)=(01H)

CY=

(1),A=(17H),R0=(23H),R1=(28H)

三、简答和编写程序(每题8分)

5.试编写一子程序,使间址寄存器R1所指向的两个片外RAM连续单元中的高4位二

进制数,合并为一个字节装入累加器A中。

已知R1指向低地址,并要求该单元高4位

放在A的低4位中。

答:

MOVXA,@R1

ANLA,#0F0H

SWJPA

MOVB,A

INCR1

MOVXA,#@R1

ANLA,#0F0H

ORLA,B

RET

郑州经济管理干部学院(6)

一填空:

(每空一分)

4.MCS—51单片机内部RAM通用存器区共有(32)个单元,分为(4)组寄存器,每组(8)个单元,以(R0~R7)作为寄存器名称。

6.MCS—51单片机中扩展I/O口占用片外(数据)存储器地址空间。

7.假定(A)=56H,(R5)=67H。

执行指令:

     ADD   A,R5

     DA

后,累加器A的内容为(23H ),CY的内容为( 1)。

8定(A)=0C5H,执行指令:

SWAP   A

后,累加器A的内容为( 05CH )。

二、阅读并分析程序(每题8分)

4.请用位操作指令,求下面逻辑方程:

P1.7=ACC.0×(B.0+P2.1)+P3.2

答:

4.MOVC,B.0

ORLC,P2.1

ANLC,ACC.0

ORLC,/P3.2

MOVP1.7,C

郑州经济管理干部学院(7)

一填空:

(每空一分)

4.若A中数据为63H,则PSW的最低位(即奇偶位P)为

(1)。

5.在变址寻址方式中,以(A)作变址寄存器,以(DPTR)或(PC)作基址寄存器。

7.假定(A)=0FH,(R7)=19H,(30H)=00H,(R1)=40H,(40H)=0FFH。

.执行指令:

  DEC   A

  DEC   R7

  DEC   30H

  DEC   @R1

后,累加器A的内容为(0EH),R7的内容为(18H),30H的内容为(OFFH),40H的内容为(0FEH)。

二、阅读并分析程序(每题10分)

4.写出达到下列要求的指令(不能改变各未涉及位的内容)。

使A的最低位置1。

清除A的高4位。

使ACC。

2和ACC。

3置1

清除A的中间4位。

答:

4.SETBACC.0

ANLA,#0FH

ORLA,#0CH

ANLA,0C3H

5.请计算下面子程序的时间。

(注:

除NOP指令外,其它指令执行时间都是2个机器

周期,假定晶体频绿为12MHz.

DELAY:

CPLRS1

MOVR6,#20

LOOP1:

MOVR7,#249

LOOP2:

NOP

NOP

DJNZR7,LOOP2

DJNZR6,LOOP1

CPLRSI

RST

答:

5.时间计算公式为:

2+2+20[2+249(1+1+2)+2]+2+2=20008M

当Fosc=12MHz时,1M=1/100000S,时间为T=20ms

三、简答和编写程序(每题8分)。

5.编程计算片内RAM区50H~57H八个单元中数的算术平均值,结果存放在5A中。

答:

5.要求8个单元的和小于255。

MOVR0,#50

MOVR1,#8

MOVA,#0

L1:

ADDA,@R0

INCR0

DJNZR1,L1

MOVB,#8

DIVAB

MOV5AH,A

郑州经济管理干部学院(8)

一填空:

(每空一分)

4.当单片机的型号为8031时,其芯片引线1/EA-定要接(0)电平。

5.CPU与内存或I/O接口相连的系统总线通常由(数据总线)、(地址总线)、(控制总线)

等三种信号线组成。

7.假定(A)=50H,(B)=0A0H。

执行指令:

MUL   AB

后,寄存器B的内容为(32H),累加器A的内容为(00H ),CY的内容为(0 ),OV内容为

(1)。

二、阅读并分析程序(每题10分)

4.(没答案…)以知A=7AH,R0=30H,内部RAM30H单元的内容为A5H,请写出下列程序段执行后累加器A的内容

ANL A,#17H

ORL 30H,A

XRLA,@R0

CPLA

郑州经济管理干部学院(9)

一填空:

(每空一分)

4.32KBRAM的首地址若为2000H,则末地址为(9FFFH)。

5.响应中断后,产生长调用指令LCALL,执行该指令的过程包括:

首先把(PC)的内容压入堆栈,以进行断点保护,然后把长调用指令的16位地址送(PC),使程

序执行转向(数据存储器)中的中断地址区。

9.假定addr11=00100000000B,标号qaz的地址为1030H。

执行指令:

    qaz:

AJMP   addr11

 后,程序转移到地址( 1100H )去执行。

二、阅读并分析程序(每题10分)

4.设R0的内容为32H,A的内容为48H,而片内RAM的32H单元的内容为80H,40H单元的内容为08H。

写出执行下列程序段后,上述各单元的内容。

MOVA,@R0

MOV@R0,40H

MOV40H,A

MOVR0,#35

答;4.(A)=80H(30H)=08H(40H)=80H(R0)=23H

三、简答和编写程序(每题8分)

5.将片外数据存储器地址为1000H~1030H的数据块,全部搬迁到片内RAM30H~60H中,并将原数据块区全部清0。

答:

5.MOVDPTR,#1000H

MOVR1,#30H

MOVR0,#30H

L1:

MOVXA,#0

MOV@R0,A

MOVA,#0

MOVX@DPTR,A

INCDPL

INCR0

DJNZR1,L1

SJMP$

郑州经济管理干部学院(10)

一填空:

(每空一分)

4.—台计算机的指令系统就是它所能执行的(指令)集合。

5.按长度分,MCS—51指令有

(1)字节的、

(2)字节的和(3)

字节的

9.假定标号qaz的地址为0100H,标号qwe的地址为0123H(即跳转的目标

  地址为0123H)。

执行指令:

    qaz:

  SJMP  qwe

该指令的相对偏移量(即指令的第二字节)为( 0123H—01002H=21H )。

二、阅读并分析程序(每题10分)

4.求执行下列指令后,累加器A及PSW中进位位CY、奇偶位P和溢出位OV的值。

(1)A=当5BH时,执行“ADDA,#8CH”

(2)A=当5BH时,执行“ANLA,#7AH”

(3)A=当5BH时,CY=1时,执行“SUBBA,0E8H”

答:

(1)A=E7HCY=0OV=0P=0

(2)A=5AHP=0

(3)A=72HCY=1P=0OV=0

三、简答和编写程序(每题8分)

5.试编写一子程序,使间址寄存器R1所指向的两个片外RAM连续单元中的高4位二

进制数,合并为一个字节装入累加器A中。

已知R1指向低地址,并要求该单元高4位

放在A的低4位中。

答:

MOVA,@R1

ANLA,#0F0H

SWAPA

MOVB,A

INCR1

MOVXA,@R1

ANLA,#0F0H

ORLA,B

RET

课题:

/*

汽车在驾驶时有左转弯、右转弯、刹车、合紧急开关、停靠等操作。

在左转弯或右转弯时,通过转弯操作杆应使左转开关或右转开关合上,从而使左头灯、仪表板左转弯灯、左尾灯或右头灯、仪表板右转弯灯、右尾灯闪烁;合紧急开关时要求前面述及的6个信号灯全都闪烁;汽车刹车时,2个尾灯点亮;若正当转弯时刹车,则转弯时原应闪烁的信号灯仍应闪烁。

以上闪烁,都是频率为1Hz的低频闪烁,在汽车停靠而停靠开关合上时,左头灯、右头灯、左尾灯、右尾灯按频率为30Hz的高频闪烁。

1Hz

左转弯left:

左头灯、仪表板左转弯灯、左尾灯0x38

右转弯right:

右头灯、仪表板右转弯灯、右尾灯0x07

合紧急开关jin:

左头灯、仪表板左转弯灯、左尾灯、右头灯、仪表板右转弯灯、右尾灯0x3f

刹车sha:

左尾灯、右尾灯0x09

左转弯刹车ls:

左头灯、仪表板左转弯灯、左尾灯、右尾灯0x39

右转弯刹车rs:

右头灯、仪表板右转弯灯、右尾灯、左尾灯0x0f

30Hz

停靠stop:

左头灯、右头灯、左尾灯、右尾灯0x2d

*/

程序:

#include

unsignedcharleft=0,right=0,jin=0,sha=0,stop=0,ls=0,rs=0;

unsignedcharkey;

unsignedinti=0,j=1,k=0;

unsignedintd=-500;

voiddelay(unsignedintx)

{unsignedinty,z;

for(y=0;y

for(z=0;z<500;z++);

}

voidan(void)interrupt1using1

{unsignedchartemp1,temp2;

TH0=d/256;

TL0=d%256;

P1=0xf0;

if(P1!

=0xf0)

{temp1=P1&0xf0;

P1=0x0f;

temp2=P1&0x0f;

key=temp1|temp2;

}

elsekey=0;

}

voidmain()

{TMOD=0x01;

TH0=d/256;

TL0=d%256;

EA=1;

ET0=1;

TR0=1;

while

(1)

{P2=0;

switch(key)

{case0xee:

{left=1;break;}

case0xed:

{right=1;break;}

case0xeb:

{sha=1;break;}

case0xe7:

{jin=1;break;}

case0xde:

{stop=1;break;}

case0xea:

{ls=1;break;}

case0xe9:

{rs=1;break;}

default:

break;

}

if((left==1)||(right==1)||(jin==1)||(sha==1)||(ls==1)||(rs==1))stop=2;

elsek=0;

if(stop==2)

{if(k<250)

{if(left==1){P2=0x38;delay

(2);left=0;}

if(right==1){P2=0x07;delay

(2);right=0;}

if(jin==1){P2=0x3f;delay

(2);jin=0;}

if(sha==1){P2=0x09;delay

(2);sha=0;}

if(ls==1){P2=0x39;delay

(2);ls=0;}

if(rs==1){P2=0x0f;delay

(2);rs=0;}

}

if((k>=250)&&(k<500))

{P2=0;

delay

(2);

}

if(k==500)k=0;

k++;

}

if(stop==1)

{

if(j==1)

{P2=0x2d;

stop=0;

delay(16);

j=0;

}

else

{P2=0;

delay(16);

j=1;

}

}

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 唐诗宋词

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1