单片机答案1Word文档格式.docx

上传人:b****6 文档编号:16644154 上传时间:2022-11-25 格式:DOCX 页数:16 大小:31.37KB
下载 相关 举报
单片机答案1Word文档格式.docx_第1页
第1页 / 共16页
单片机答案1Word文档格式.docx_第2页
第2页 / 共16页
单片机答案1Word文档格式.docx_第3页
第3页 / 共16页
单片机答案1Word文档格式.docx_第4页
第4页 / 共16页
单片机答案1Word文档格式.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

单片机答案1Word文档格式.docx

《单片机答案1Word文档格式.docx》由会员分享,可在线阅读,更多相关《单片机答案1Word文档格式.docx(16页珍藏版)》请在冰豆网上搜索。

单片机答案1Word文档格式.docx

PSW是一个8位寄存器,用于设定CPU的状态和指示指令执行后的状态。

CY(PSW.7):

进位标志。

在执行加减运算指令时,如果运算结果的最高位(D7)发生了进位或借位,则CY由硬件自动置1。

AC(PSW.6):

半进位标志位,也称为辅助标志位。

在执行加减运算指令时,如果运算结果的低半字节(D3)发生了向高半字节进位或借位,则AC由硬件自动置1。

F0、F1(PSW.5和PSW.1):

用户标志位。

用户可以根据需要对F0、F1赋予一定的含义,由用户置1和清0,作为软件标志。

RS1、RS0(PSW.4和PSW.3):

工作寄存器组选择控制位。

通过对这两位设定,可以从4个工作寄存器组中选择一组作为当前工作寄存器。

OV(PSW.2):

溢出标志位,有两种情况影响该位。

一是执行加减运算时,如果D7或D6任一位,并且只一位发生了进位或借位,则OV自动置1,

P(PSW.0):

奇偶标志位。

每条指令执行完后,该位都会指示当前累加器A中1的个数。

如果A中有奇数个1,则P自动置1。

8.MCS-51单片机复位后,CPU使用哪组工作寄存器?

它们的地址是什么?

用户如何改变当前工作寄存器组?

MCS-51单片机复位后,CPU使用0组工作寄存器。

它们的地址是08H~0FH。

通过程序状态字PSW中的RS1、RS0标志位改变当前工作寄存器组。

9.什么叫堆栈?

堆栈指针SP的作用是什么?

堆栈是在RAM专门开辟的一个特殊用途的存储区。

堆栈是按照“先进后出”(即先进入堆栈的数据后移出堆栈)的原则存取数据。

堆栈指针SP是一个8位寄存器,其值为栈顶的地址,即指向栈顶,SP为访问堆栈的间址寄存器。

10.PC与DPTR各有哪些特点?

有何异同?

PC与DPTR都是16位的寄存器。

PC由两个8位的计数器PCH和PCL组成。

PC实际是程序的字节地址计数器,它的内容是将要执行的下一条指令的地址,具有自加1功能。

改变PC的内容就可以改变程序执行的方向。

DPTR的高字节寄存器用DPH表示,低字节寄存器用DPL表示。

DPTR既可以作为一个16位寄存器使用,也可以作为两个独立的8位寄存器使用。

DPTR主要用于存放16位地址,以便对64KB的片外RAM和64KB的程序存储空间作间接访问。

11.测试哪个引脚,可以快捷地判断单片机是否正在工作?

若要检查单片机是否工作,可以使用示波器查看ALE引脚是否有脉冲信号输出。

12.读端口锁存器和“读引脚”有何不同?

各使用哪些指令?

一种是读取锁存器原来的输出值,另一种情况是打开端口的缓冲器读取引脚上的信号,读端口锁存器,用MOVA,Pi指令。

“读引脚”,要先用MOVPi,#0FFH对相应端口写FFH,使输出场效应管T截止,才能够正确输入,再用MOVA,Pi指令。

13.MCS-51单片机的P0~P3口结构有何不同?

用作通用I/O口输入数据时应注意什么?

P2口是一个双功能口,一是通用I/O口,二是以总线方式访问外部存储器时作为高8位地址口。

其端口某一位的结构如图2-11所示,对比图2-10知,与P1口的结构类似,驱动部分基本上与P1口相同,但比P1口多了一个多路切换开关MUX和反相器3。

P3口是一个多功能口,其某一位的结构见图2-12。

与P1口的结构相比不难看出,P3口与P1口的差别在于多了“与非门”3和缓冲器4。

正是这两个部分,使得P3口除了具有P1口的准双向I/O口的功能之外,还可以使用各引脚所具有的第2功能。

P0多了一路总线输出(地址/数据)、总线输出控制电路(反相器3和与门4)、两路输出切换开关MUX及开关控制C,并且把上拉电阻换成了场效应管T1,以增加总线的驱动能力。

用作通用I/O口输入数据时应注意要先用MOVPi,#0FFH对相应端口写FFH,使输出场效应管T截止,才能够正确输入。

14.P0口用作通用I/O口输出数据时应注意什么?

P0口与其它端口不同,它的输出级无上拉电阻。

当把它用作通用I/O口时,输出级是开漏电路,故用其输出去驱动NMOS输入时外接上拉电阻,这时每一位输出可以驱动4个LS型TTL负载。

用作输入时,应先向端口锁存器写1。

15.什么叫时钟周期?

什么叫机器周期?

什么叫指令周期?

时钟周期、机器周期与振荡周期之间有什么关系?

时钟周期即振荡周期:

为晶振的振荡周期,是最小的时序单位。

状态周期:

是振荡频率2分频后的时钟周期。

显然,一个状态周期包含2个振荡周期。

机器周期(MC):

1个机器周期由6个状态周期、即12个振荡周期组成,是量度指令执行时间的单位。

指令周期:

是执行一条指令所需要的时间。

一个指令周期由1~4个机器周期组成。

16.MCS-51单片机常用的复位电路有哪些?

复位后机器的初始状态如何?

复位电路有两种方式:

上电自动复位电路和手动复位电路。

复位后,程序计数器PC变为0000H,使单片机从程序存储器地址0000H单元开始执行。

除P0~P3为FFH;

SP为07H;

SBUF为不确定。

大部分特殊功能寄存器清零。

17.MCS-51单片机有几种低功耗工作方式?

如何实现,又如何退出?

MCS-51单片机有空闲和掉电两种低功耗工作方式。

当CPU执行完置IDL=1的指令后,系统就进入空闲方式。

进入空闲方式之后,有两种方法可以退出。

一种是任何中断请求被响应都可以由硬件将IDL位清0而结束空闲方式。

另一种退出空闲方式的方法是硬件复位。

当CPU执行完置PD=1的指令后,系统就进入掉电工作方式。

对于一般的单片机来说,退出掉电方式的唯一方法是由硬件复位。

第3章习题答案

1.简述MCS-51汇编指令格式。

MCS-51汇编语言指令由四部分组成,其一般格式如下:

[标号:

]操作码[操作数][;

注释]

格式中的方括号意为可以没有相应部分,可以没有标号、操作数和注释,至少要有操作码。

其操作数部分最多可以是两项:

[第1操作数][,第2操作数]

2.何谓寻址方式?

MCS-51单片机有哪些寻址方式,是怎样操作的?

各种寻址方式的寻址空间和范围是什么?

MCS-51单片机有7种寻址方式:

立即数寻址、寄存器寻址、直接寻址、寄存器间接寻址、变址寻址、位寻址和指令寻址。

可以分为两类:

操作数寻址和指令寻址。

立即数寻址的寻址空间和范围是:

在程序存储空间,随指令读入MOVA,#46H

直接寻址的寻址空间和范围是:

片内RAM中,低128字节和SFRMOVA,46H

寄存器寻址的寻址空间和范围是:

使用R0~R7、A、B、C、DPTRMOVA,R2

寄存器间接寻址的寻址空间和范围是:

片内RAM:

使用@Ri,SP;

范围为256B,不含SFR,片外RAM:

使用@Ri,@DPTR;

范围为64KBMOVA,@R0MOVXA,@DPTR

变址寻址的寻址空间和范围是:

使用@A+PC,@A+DPTR;

在程序存储器中;

范围分别为PC之后256B之内和64KB全空间MOVCA,@A+DPTR

位寻址的寻址空间和范围是:

使用位地址;

在位寻址空间;

RAM的20H~2FH和SFRSETB36H

指令绝对寻址的寻址空间和范围是:

操作数是目标地址;

在程序存储空间;

范围为2KB或64KB全空间AJMPFIRSTLJMPSECON

指令相对寻址的寻址空间和范围是:

操作数是相对地址;

范围﹣128~127SJMPLOOP

3.访问片内RAM低128字节使用哪些寻址方式?

访问片内RAM高128字节使用什么寻址方式?

访问SFR使用什么寻址方式?

访问片内RAM低128字节使用直接寻址,寄存器间接寻址,位寻址;

访问片内RAM高128字节使用寄存器间接寻址;

访问SFR使用直接寻址,位寻址。

4.访问片外RAM使用什么寻址方式?

访问片外RAM使用寄存器间接寻址

5.访问程序存储器使用什么寻址方式?

指令跳转使用什么寻址方式?

访问程序存储器使用指令绝对寻址,指令相对寻址。

指令跳转使用指令绝对寻址,指令相对寻址。

6.分析下面指令是否正确,并说明理由。

MOVR3,R7错,两个操作数不能同时为工作寄存器

MOVB,@R2对

DECDPTR错,不存在

MOV20H.8,F0错,位传送指令必须用C

PUSHDPTR

CPL36H错,不存在

MOVPC,#0800H错,PC不能访问

7.分析下面各组指令,区分它们的不同之处。

MOVA,30H与MOVA,#30H

前者表示:

(30H)→A后者表示:

30H→A

MOVA,R0与MOVA,@R0

(R0)→A后者表示:

((R0))→A

MOVA,@R1与MOVXA,@R1

在片内数据存储器((R1))→A

后者表示:

在片外数据存储器((R1))→A

MOVXA,@R0与MOVXA,@DPTR

前者R0表示8位地址后者DPTR表示16位地址

MOVXA,@DPTR与MOVCA,@A+DPTR

((DPTR))→A后者表示:

((DPTR)+(A))→A

8.在MCS-51单片机的片内RAM中,已知(30H)=38H,(38H)=40H,(40H)=48H,(48H)=90H。

请说明下面各是什么指令和寻址方式,以及每条指令执行后目的操作数的结果。

MOVA,40H;

数据传送,直接寻址,(A)=48H

MOVR0,A;

数据传送,寄存器寻址,(R0)=48H

MOVP1,#0FH;

数据传送,立即数寻址,(P1)=0FH

MOV@R0,30H;

数据传送,直接寻址,(48H)=38H

MOVDPTR,#1234H;

数据传送,立即数寻址,(DPTR)=1234H

MOV40H,30H;

数据传送,直接寻址,(40H)=38H

MOVR0,38H;

数据传送,直接寻址,(R0)=40H

MOVP0,R0;

数据传送,直接寻址,(P0)=40H

MOV28H,#30H;

数据传送,立即数寻址,(28H)=30H

MOVA,@R0;

数据传送,寄存器间接寻址,(A)=38H

9.已知(A)=23H,(R1)=65H,(DPTR)=1FECH,片内RAM(65H)=70H,ROM(205CH)=64H。

试分析下列各条指令执行后目标操作数的内容。

MOVA,@R1;

(A)=70H

MOVX@DPTR,A;

(1FECH)=70H

MOVCA,@A+DPTR;

(A)=64H

XCHDA,@R1;

(A)=65H

10.已知(A)=76H,(R1)=76H,(B)=4,CY=1,片内RAM(76H)=0D0H,(80H)=6CH。

试分析下列各条指令执行后目标操作数的内容和相应标志位的值。

ADDA,@R1;

(A)=46H,CY=1

SUBBA,#75H;

(A)=0D0H,CY=1

MULAB;

(A)=40H,(B)=03H

DIVAB;

(A)=15H,(B)=01H

ANL76H,#76H;

(76H)=50H

ORLA,#0FH;

(A)=1FH

XRL80H,A;

(80H)=73H

11.已知(A)=83H,(R0)=17H,(17H)=34H,试分析当执行完下面程序段后累加器A、R0、17H单元的内容。

ANLA,#17H;

(A)=03H

ORL17H,A;

(17H)=37H

XRLA,@R0;

(A)=34H

CPLA;

(A)=0CBH

12.阅读下面程序段,说明该段程序的功能。

MOVR0,#40H

MOVR7,#10

CLRA

LOOP:

MOV@R0,A

INCA

INCR0

DJNZR7,LOOP

SJMP$

把0,1,2,3……数列送到40H开始的10个单元中。

13.阅读下面程序段,说明该段程序的功能。

MOVA,R0

ADDA,@R0

MOV43H,A

ADDCA,#0

MOV42H,A

40H加41H单元的数,结果送42H:

43H

14.阅读下面程序段,说明该段程序的功能。

MOVA,30H

MOVB,#5

MULAB

ADDA,31H

MOV33H,A

ADDCA,B

MOV32H,A

(30H)×

5+(31H)→(32H:

33H)

15.编写程序,用位处理指令实现“P1.4=P1.0∨(P1.1∧P1.2)∨P1.3”的逻辑功能。

MOVC,P1.1

ANLC,P1.2

ORLC,P1.0

ORLC,P1.3

MOVP1.3,C

16.编写程序,若累加器A的内容分别满足下列条件,则程序转到LABLE存储单元。

设A中存放的的无符号数。

(1)A≥10;

(2)A>10;

(3)A≤10。

(1)

CJNEA,#10,NEXT

LJMPLABLE

NEXT:

JNCLABLE

(2)

LJMPNEXT2

NEXT2:

(3)

JCLABLE

17.编写程序,查找片内RAM的30H~50H单元中是否有55H这一数据,若有,则51H单元置为FFH;

若未找到,则将51H单元清0。

MOVR0,29H

INCR0

CJNER0,#51H,NEXT2

MOV51H,#0FFH

AJMPOVER

CJNE@R0,#55H,NEXT

MOV51H,#0

OVER:

18.编写程序,查找片内RAM的30H~50H单元中出现0的次数,并将查找的结果存入51H单元。

MOVR0,30H

CJNE@R0,#00H,NEXT2

INC51H

NEXT2:

CJNER0,#51H,NEXT

19.在片外RAM中有一个数据块,存有若干字符、数字,首地址为SOURCE要求将该数据块传送到片内RAM以DIST开始的区域,直到遇到字符“$”时结束($也要传送,它的ASCII码为24H)。

MOVDPTR,#SOURCE

MOVR0,#DIST

MOVXA,@DPTR

MOV@R0,A

INCDPTR

CINEA,#24H,NEXT

20.片内RAM的30H和31H单元中存放着一个16位的二进制数,高位在前,低位在后。

编写程序对其求补,并存回原处。

CLRC

MOVA,#0

SUBBA,31H

MOV31H,A

SUBBA,30H

MOV30H,A

21.片内RAM中有两个4字节压缩的BCD码形式存放的十进制数,一个存放在30H~33H单元中,另一个存放在40H~43H单元中。

编写程序将它们相加,结果的BCD码存放在30H~33H中。

MOVR0,#30H

MOVR1,#40H

MOVR2,#4

MOVA,@R0

ADDCA,@R1

INCR1

DJNZR2,NEXT

22.编写程序,把片外RAM从2000H开始存放的16字节数据,传送到片内从30H开始的单元中。

MOVDPTR,#2000H

MOVR1,#0

CINER1,#16H,NEXT

第5章习题答案

1.什么是中断和中断系统?

计算机采用中断系统带来了哪些优越性?

当CPU当CPU正在处理某事件的时候,外部或者内部发生的某一事件请求CPU迅速去处理,于是CPU暂时中止当前的工作,转去处理所发生的事件。

中断服务处理完该事件后,再返回到原来被中止的地方继续原来的工作,这样的过程称为中断。

1.CPU与外设同步工作

2.实时处理

3.故障处理

2.MCS-51共有几个中断源?

各中断标志是如何产生的,又如何清零的?

CPU响应中断时,中断入口地址各是多少?

MCS-51共有5个中断源。

各中断标志是通过中断请求产生的,通过指令或硬件清零的。

CPU响应中断时,中断入口地址各是03H,0BH,13H,1BH,23H。

3.编写一段对中断系统那个初始化的程序,使之允许INT0、INT1、T1、串行口中断,且使串行口中断为高优先级。

EX0=1;

EX1=1;

ET1=1;

ES=1;

EA=1;

PS=1;

4.什么是中断优先级?

什么是中断嵌套?

处理中断优先级的原则是?

中断响应的优先次序是中断优先级。

当一个中断处理的过程中又响应了更高优先级的中断是中断嵌套。

处理中断优先级的原则是先高级中断,后低级中断。

同级的按自然优先级排序。

5.MCS-51在什么情况下可以响应中断?

中断响应的过程是?

响应中断的条件

(1)中断源有中断请求;

(2)中断总允许位EA=1;

(3)请求中断的中断源的中断允许位为1;

在满足以上条件的基础上,若有下列任何一种情况存在,中断响应都会受到阻断。

(1)CPU正在执行一个同级或高优先级的中断服务程序。

(2)正在执行的指令尚未执行完。

(3)正在执行中断返回指令RETI或者对专用寄存器IE、IP进行读/写的指令。

CPU在执行完上述指令之后,要再执行一条指令,才能响应中断请求。

中断请求被响应后,有内部长调用(LCALL)将程序转向对应的中断矢量地址,执行执行中断服务程序。

6.中断响应过程中,为什么通常要保护现场?

如何保护和哪些信息要进行保护?

因为中断服务程序会用到寄存器和存储器的数据会被覆盖,而中断是要返回的,所以通常要保护现场。

方法是把要保护的内容压入到堆栈。

7.MCS-51的ROM中,应如何安排程序区?

程序区从00H到32H的存储区依次存放主程序入口和各中断服务程序的入口。

8.外部中断触发方式有几种?

它们的特点是什么?

外部中断触发方式有2种。

它们的特点是低电平触发方式,边沿触发方式,上一个机器周期检测为高电平,接下来的下一个机器周期为低电平。

9.中断系统的初始化一般包括哪些内容?

开相应中断允许,开总中断允许,设置中断优先级。

10.中断响应的时间是否使确定不变的?

为什么?

在实际以用中应如何考虑这一因素?

中断响应的时间不是确定不变的。

因为中断发生的位置是不确定的。

在实际应用中对实时性要求高的场合要考虑这一因素,合理安排程序。

11.在中断请求有效并开中断的状况下,能否保证立即响应中断?

有什么条件?

在中断请求有效并开中断的状况下,不能保证立即响应中断。

如果要立即响应中断必须是当前指令的最后周期,没有同级或更高级中断发生,下一条指令不是RETI或者对专用寄存器IE、IP进行读/写的指令。

12.中断服务程序与普通子程序有什么根本的区别?

中断服务程序是随机发生的,结束后要返回断点。

普通子程序是安排好的,没有断点。

13.为什么要用RETI指令结束中断服务程序?

RETI指令的功能是什么?

为什么不用RET指令作为中断服务程序的返回指令?

中断服务程序返回指令RETI,除了具有“RET”指令的功能外,还将开放中断逻辑的作用。

14.哪些中断源的中断请求标志位是由硬件自动复位的?

哪些中断的中断请求标志必须通过软件编程进行复位?

外部中断和定时器中断是由硬件自动复位的。

串行口中断的中断请求标志必须通过软件编程进行复位。

第6章习题答案

1.MCS-51单片机内部有几个定时器/计数器,有几种工作方式?

答:

89C52内部有3个定时器/计数器,定时器0有4种工作方式,定时器1有3种工作方式,定时器2有4种工作方式。

2.定时器/计时器用作定时器用时,其定时时间和哪些因素有关?

作计数器时,对外界计数频率有何限制?

定时器的定时时间和单片机的振荡频率和定时初值有关。

做计数器时候,其外界计数频率最大不能超过Fosc/12。

3.MCS-51单片机的定时器/计数器的定时和计数两种功能各有什么特点?

定时是对时钟脉冲进行计数。

计数是对外部计数脉冲进行计数。

4.MCS-51单片机的T0、T1定时器/计数器四种工作方式各有什么特点?

方式0:

13位计数模式。

方式1:

16位

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

当前位置:首页 > 工程科技 > 材料科学

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

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