单片机原理和应用曹克澄课程课后习题答案.docx
- 文档编号:7379530
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:56
- 大小:107.72KB
单片机原理和应用曹克澄课程课后习题答案.docx
《单片机原理和应用曹克澄课程课后习题答案.docx》由会员分享,可在线阅读,更多相关《单片机原理和应用曹克澄课程课后习题答案.docx(56页珍藏版)》请在冰豆网上搜索。
单片机原理和应用曹克澄课程课后习题答案
《单片机原理及应用》习题答案
第一章基础知识
1.微型计算机主要由哪几部分组成?
各部分有何功能?
答:
一台微型计算机由中央处理单元(CPU)、存储器、I/O接口及I/O设备等组成,相互之间通过三组总线(Bus):
即地址总线AB、数据总线DB和控制总线CB来连接。
CPU由运算器和控制器组成,运算器能够完成各种算术运算和逻辑运算操作,控制器用于控制计算机进行各种操作。
存储器是计算机系统中的“记忆”装置,其功能是存放程序和数据。
按其功能可分为RAM和ROM。
输入/输出(I/O)接口是CPU与外部设备进行信息交换的部件。
总线是将CPU、存储器和I/O接口等相对独立的功能部件连接起来,并传送信息的公共通道。
2.将下列十进制数分别转换成为二进制数,十六进制数和BCD码数的形式:
100,64,78,80
解:
1)100=1100100B=64H=000100000000BCD;
2)64=1000000B=40H=01100100BCD;
3)78=1001110B=4EH=01111000BCD。
H=
3.写出下列十六进制无符号数对应的十进制数和二进制:
0D5H,64H,2CH,4FEH
解:
1)0D5H=213=11010101B;
2)64H=100=1100100B;
3)2CH=44=101100B;
4)4FEH=1278=10011111110B。
4.写出下列十进制数对应的二进制原码、反码和补码:
+35,+50,-10,-20
解:
1)+35=(23H)原=(23H)反=(23H)补;
2)+50=(32H)原=(32H)反=(32H)补;
3)-10=(8AH)原=(0F5H)反=(0F6H)补;
4)-20=(94H)原=(0EBH)反=(0ECH)补;
5.根据给定的原码、反码、补码求真值。
1)(0CBH)原=(-75)真值;
2)(8BH)反=(-116)真值;
3)(9BH)补=(-101)真值;
4)(6BH)补=(+107)真值;
解:
1)(0CBH)原=(-75)真值;
2)(8BH)反=(-116)真值;
3)(9BH)补=(-101)真值;
4)(6BH)补=(+107)真值;
6.试分别判断下列各组数据大小?
1)A=0.011BB=0.011C=0.011H
2)A=1001BB=1001C=1001H
解:
1)A=0.011B=0×2-1+1×2-2+1×2-3=0.25+0.125=0.375;
B=0.011
C=0.011H=0×16-1+1×16-2+1×16-3=0.004150390625
所以:
A>B>C
2)A=1001B=9;B=1001;C=1001H=4097
所以:
A
7.先将下列各组数据转换为补码表示的带符号数,然后用进行补码运算,再将结果还原成原码,并写出对应的十进制数检验结果是否正确。
1)(―74)+41
2)(―74)―41
解:
根据补码定义有:
―74=(0B6H)补,+41=(29H)补,―41=(0D7H)补
1)[(―74)+41]补=(―74)补+(41)补=(0B6H+29H)补=(0DFH)补
=(-33)真值
十进制数运算:
(―74)+41=―33
所以:
二者运算结果相同。
2)[(―74)―41]补=(―74)补+(―41)补=(0B6H+0D7H)补=(8DH)补
=(-115)真值
十进制数运算:
(―74)―41=―115
所以:
二者运算结果相同。
8.何谓单片机?
单片机有何特点?
答:
单片机(SingleChipMicrocomputer)是指把CPU、RAM、ROM、定时器/计数器以及I/O接口电路等主要部件集成在一块半导体芯片上的微型计算机。
单片机在控制应用领域中的特点:
(1)体积小、结构简单、可靠性高;
(2)控制功能强;
(3)低电压、低功耗;
(4)优异的性价比。
9.单片机内部ROM的配置有几种形式?
答:
单片机片内ROM的配置状态可分四种:
(1)片内掩膜(Mask)ROM型单片机(如8051),适合于定型大批量应用产品的生产;
(2)片内EPROM型单片机(如8751),适合于研制产品样机;
(3)片内无ROM型单片机(如8031),需外接EPROM,单片机扩展灵活,适用于研制新产品;
(4)EEPROM(或FlashROM)型单片机(如89C51),内部程序存储器电可擦除,使用更方便。
第2章MCS-51系列单片机的结构和时序
1.8051单片机内包含哪些主要功能部件?
各有什么功能?
答:
8051单片机是一个完整的单片微型计算机。
它包括以下功能部件:
(1)1个8位CPU;
(2)片内4KB的程序存储器ROM;
(3)片内128B的数据存储器RAM;
(4)可寻址外部程序存储器和数据存储器空间各64KB的控制电路;
(5)21个特殊功能寄存器SFR;
(6)4个8位并行I/O口P0~P3,共32根I/O线;
(7)1个全双工的串行口;
(8)2个16位定时器/计数器;
(9)5个中断源,有2个优先级嵌套中断结构;
(10)片内振荡器及时钟电路。
2.8051单片机的
信号有何功能?
8031的
引脚应如何处理,为什么?
答:
(1)
是访问外部程序存储器ROM的控制信号。
当
为低电平(接地)时,CPU只执行外部程序存储器中的程序。
当
为高电平且PC值小于0FFFH(4K)时,CPU执行内部程序存储器的程序,但当PC的值超出4K时(对8051/8751/8951)将自动转去执行片外程序存储器内的程序。
8031单片机无片内ROM的,必须外部扩展程序存储器,因此,8031的
必须接地(低电平)。
3.MCS-51单片机的P0~P3口各有什么特点?
答:
MCS-51单片机有P0、P1、P2、P3四个双向的8位并行I/O口,每个端口可以按字节输入或输出,每一条I/O线也可以单独用作输入或输出(即按位进行输入或输出)。
每个端口都是由一个锁存器(即特殊功能寄存器P0~P3),一个输出驱动器和两个(P3口为3个)输入缓冲器组成。
并行I/O口作输出时数据可以锁存,作输入时数据可以缓冲,但它们又各具特点。
(1)P0口和P2口构成MCS-51单片机的16位地址总线,P0口还是8位的数据总线。
P3口多用于第二功能输入或输出。
通常只有P1口用于一般输入/输出。
P3口各位的第二功能
P3口
引脚
第二功能
P3口引脚
第二功能
P3.0
RXD(串行输入端)
P3.4
T0(定时器0的外部输入)
P3.1
TXD(串行输出端)
P3.5
T1(定时器1的外部输入)
P3.2
(外部中断0输入)
P3.6
(片外数据存储器写选通控制输出)
P3.3
(外部中断1输入)
P3.7
(片外数据存储器读选通控制输出)
(2)系统复位后,P0~P3口的32个管脚均输出高电平,因此在系统的设计过程中,应保证这些管脚控制的外设不会因为系统复位而发生误动作。
(3)P0~P3口输出级的电路结构有所不同。
P0口是三态输出,其每个管脚均可以驱动8个LSTTL输入,而P1~P3口的输出级均有上拉电阻,每个管脚可驱动4个LSTTL输入。
(4)每个并行口,可定义一部分管脚为输入脚,另一部分管脚为输出脚,没有使用的管脚可以悬空。
4.简述8051单片机存储器的组织结构和片内RAM的地址空间分配。
答:
8051单片机的存储器包括程序存储器和数据存储器,从用户使用的角度可分为三个逻辑地址空间:
(1)片内、片外统一编址的64KB程序存储器地址空间0000H~0FFFFH;
(2)64KB的外部数据存储器或扩展I/O口地址空间0000H~0FFFFH;
(3)256B的片内数据存储器地址空间00H~FFH(包括低128B的内部RAM地址00H~7FH和高128B的特殊功能寄存器地址空间,21个SFR离散地分布在这个区域)。
内部RAM共有128个单元,根据用途可划分为工作寄存器区、位寻址区和通用RAM区,各区域的特性如下:
(1)工作寄存器区(00H~1FH)寄存器区32个单元共分4个组,每个组有8个8位的寄存器R0~R7。
在任何时刻,四个组中只能有一组可以成为当前工作寄存器组使用,其他三组作为一般的内部RAM使用。
当前工作寄存器组由程序状态字寄存器PSW的RS0和RS1两位的状态来决定。
(2)位寻址区(20H~2FH)共16个单元,每个单元有8个位,每个位都有一个位地址,编号为00H~7FH,位寻址区的16个单元也可以按字节寻址,作为一般的内部RAM使用。
(3)通用RAM区(30H~7FH)这部分存储空间作为一般的内部RAM区或堆栈区,CPU只能按字节方式寻址。
5.8051单片机有哪些特殊功能寄存器?
答:
8051单片机有21个8位的特殊功能寄存器(SFR),它们的地址离散地分部在内部数据存储器的80H~FFH地址空间。
在8051单片机结构中,21个SFR在物理上是分散在片内各功能部件中:
(1)CPU的中SFR:
Acc、B、PSW、SP和DPTR(16位寄存器,由DPH和DPL组成);
(2)定时/计数器单元中的寄存器:
TMOD、TCON、T0(16位寄存器,由TH0和TL0组成)和T1(16位寄存器,由TH1和TL1组成);
(3)并行I/O口寄存器:
P0、P1、P2和P3;
(4)中断系统内的寄存器:
IE和IP;
(5)串行端口中的寄存器:
SCON、SBUF和PCON。
6.程序计数器PC的功能和特点?
答:
程序计数器PC是一个16位的专用寄存器,用来存放即将要执行的指令地址,可对64KB的程序存储器直接寻址。
它具有自动加1功能,当CPU要取指令时,PC的内容送地址总线上,从存储器中取出指令后,PC内容则自动加1,指向下一条指令,从而保证程序按顺序执行。
PC虽然也是CPU内部的一个寄存器,但它在物理结构上是独立的,没有地址,是不可寻址的,用户无法对它进行直接读写,不属特殊功能寄存器。
7.什么叫堆栈?
堆栈指针SP的作用是什么?
8051单片机堆栈的最大容量是多少字节?
答:
堆栈是按照“先进后出,后进先出”的原则来存取数据的一个内部RAM区域,这个存储器区域的一端是固定的(栈底),另一端是活动的(栈顶),每个存储单元是不能按字节任意访问的。
堆栈指针SP始终指向栈顶单元,栈顶随着数据入栈和出栈上下浮动。
8051单片机堆栈的最大容量是128字节。
8.8051单片机是如何确定和改变当前工作寄存器组?
答:
在任何时刻,8051单片机的四个工作寄存器组中只能有一组可以成为当前工作寄存器组使用,其他三组作为一般的内部RAM使用。
当前工作寄存器组由程序状态字寄存器PSW的RS0和RS1两位的状态来决定,如表所示。
当前工作寄存器组的选择
RS1
RS0
被选寄存器组
寄存器R0~R7的地址
0
0
0组
00H~07H
0
1
1组
08H~0FH
1
0
2组
10H~17H
1
1
3组
18H~1FH
根据需要,用户可以利用传送指令或位操作指令改变RS1和RS0的内容来选择不同的工作寄存器组。
9.单片机复位后,CPU使用了哪一组工作寄存器?
工作寄存器R0~R7对应的单元地址是什么?
答:
单片机复位后,RS1和RS0都为0,CPU选中第0组作为当前工作寄存器组,工作寄存器R0~R7对应的单元地址是00H~07H。
10.程序状态字寄存器PSW的作用是什么?
各位的作用是什么?
答:
PSW是一个8位的特殊功能寄存器,由一些标志位组成,用于存放程序运行中的各种状态信息。
它可以进行位寻址。
各位的作用如下:
Cy:
进位标志位。
在进行加(或减)法运算时,若操作结果的最高位(D7位)有进位(或借位)时,Cy由硬件置1,否则Cy清0。
在进行位操作时,Cy又是位累加器,指令助记符用C表示。
AC:
辅助进位标志位。
在进行加(或减)运算时,若操作结果的低半字节(D3位)向高半字节产生进位(或借位)时,AC位将由硬件自动置1,否则AC位清0。
F0:
用户标志位。
用户根据需要对F0置位或复位,作为软件标志。
RS1和RS0:
工作寄存器组选择控制位。
由用户用软件改变RS1和RS0的状态,以选择内RAM中的哪组工作寄存器为当前工作寄存器组。
OV:
溢出标志位。
当进行补码运算时,运算结果超出-128~+127范围时,产生溢出,则OV自动置1,否则OV清0。
PSW.1:
保留位。
8051中未定义。
P:
奇偶校验标志位。
每条指令执行完后,该位始终跟踪累加器A中1的数目的奇偶性。
如果A中有奇数个1,则P=1;否则P=0。
11.什么是时钟周期、机器周期和指令周期?
答:
(1)时钟周期(又称为振荡周期)是指振荡器产生一个振荡脉冲信号所用的时间,是振荡频率的倒数,称为拍节。
(2)机器周期是指CPU完成某一个规定操作所需的时间,8051单片机的一个机器周期包含6个状态,并依次表示为S1~S6,每个状态分为2个节拍。
因此一个机器周期包含12个时钟周期(振荡周期),依次表示为:
S1P1、S1P2、S2P1、…、S6P1、S6P2。
(3)指令周期是指CPU执行一条指令所需要的时间称为指令周期。
MCS-51单片机指令周期根据指令的不同,可包含有1或2或4个机器周期。
12.8051单片机复位后寄存器PC、A、PSW、SP、P0~P3的状态各是什么?
复位后内部RAM中的数据有何影响?
答:
8051单片机复位后PC为0000H,A和PSW均为00H,SP为07H,P0~P3均为FFH。
单片机的复位不影响内部RAM的状态(包括工作寄存器Rn)。
13.80C51如何进入节电工作方式?
答:
只有CHMOS型单片机(如80C51)才有这种工作方式,有两种节电方式,即待机方式和掉电保护方式。
由片内SFR中的电源控制寄存器PCON的低4位来控制待机和掉电两种方式,其格式如下:
位
D7
D6
D5
D4
D3
D2
D1
D0
位名称
SMOD
—
—
—
GF1
GF0
PD
IDL
(1)IDL:
待机方式位。
若IDL=1,进入待机方式;
(2)PD:
掉电方式位。
若PD=1,进入掉电方式;
当PD和IDL同时为1,则先进入掉电工作方式。
复位后,PCON中有定义的位均为0。
第3章MCS-51系列单片机指令系统
1.简述汇编指令格式。
答:
汇编语言的指令格式一般如下:
[标号:
]操作码 [第一操作数][,第二操作数][,第三操作数][;注释]
其中:
带有方括号[……]的部分代表可选项。
标号:
是表示该指令的符号地位,可以根据需要进行设置。
标号以英文字母开始的1-6个字母或数字组成的字符串表示,并以“:
”结尾。
操作码:
是表示指令的操作功能,用助记符表示。
每条指令都有操作码,是指令的核心部分。
操作数:
表示参与传送、运算的数据或数据地址。
这里的操作数不一定就是直接参与运算或传送的,而应根据操作数的寻址方式,寻找出真正参与运算或传送的数据。
二个或二个以上操作数之间用“,”间隔。
注释:
用来解释该条指令或一段程序的功能,便于对指令或程序的阅读理解。
注释以“;”为开始,注释部分对程序的执行没有影响。
2.什么叫寻址方式?
在MCS-51系列单片机指令系统中,主要有哪几种寻址方式?
试分别举例说明。
答:
寻址就是寻找操作数的地址,寻找操作数地址的方式,称为操作数地址的寻址方式,简称寻址方式。
在MCS-51系列单片机指令系统中,主要的寻址方式有:
(1)立即寻址方式,指令如:
MOV A,#67H;
(2)立即寻址方式,指令如:
MOV A,66H;
(3)寄存器寻址方,指令如:
MOV A,R3;
(4)寄存器间接寻址方式,指令如:
MOV A,@R1;
(5)变址寻址方式,指令如:
MOVC A,@A+DPTR;
(6)相对寻址方式,指令如:
SJMP 30H;
(7)位寻址方式,指令如:
MOV ACC.3,Cy
3.试说明下列指令中划线部分的寻址方式。
MOV A,@R0
ADD A,#36H
MOVC A,@A+PC
DJNZ R2,rel
SETB RS1
CLR A
MOV 45H,A
CLR C
解:
第1条为寄存间接寻址方式;第2条指令为立即寻址方式;第3条指令为变址寻址方式;第4条指令为相对寻址方式,第5条指令为位寻址方式,第6条指令为寄存器寻址,第6条指令为直接寻址方式,第7条指令为位寻址方式。
4.设A=9BH,R0=30H,内RAM的(30H)=40H,(40H)=6DH,分别执行下列指令,说明被真正传送的数据是多少?
1)MOV A,#40H
2)MOV 40H,@R0
3)MOV A,30H
4)MOV A,@R0
5)MOV A,R0
答:
1)真正被传送的数据是立即数40H。
2)真正被传送的数据是R0间址中(即30H单元中)的数据40H。
3)真正被传送的数据是30H单元中的数据40H。
4)真正被传送的数据是R0间址中(即30H单元中)的数据40H。
5)真正被传送的数据是R0中的数据30H。
5.设A=86H,R0=30H,R1=40H,内RAM的(30H)=76H,(40H)=6BH,执行下面程序:
MOV A,40H
MOV @R0,A
MOV A,R0
MOV @R1,A
MOV R1,A
MOV @R1,#70H
后,A= ,R0= ,R1= ,(30H)= ,(40H)=
解:
MOV A,40H;A=6BH
MOV @R0,A;(R0)=(30H)=6BH
MOV A,R0;A=30H
MOV @R1,A;(R1)=(40H)=30H
MOV R1,A;R1=30H
MOV @R1,#70H;(R1)=(30H)=70H
所以:
A= 30H ,R0= 30H ,R1= 30H ,(30H)= 70H ,(40H)= 30H
6.设A=65H,R0=30H,R1=31H,R2=32H,内RAM的(30H)=40H,(31H)=50H,(32H)=60H,(40H)=70H,(50H)=80H,执行下面程序:
XCHD A,@R1
MOV 40H,A
SWAP A
MOV 50H,A
XCH A,R2
MOV @R0,A
后,A= ,R0= ,R1= ,R2= ,(30H)= ,(31H)= ,(32H)= ,(40H)= ,(50H)=
解:
XCHD A,@R1;A=60H,(R1)=(31H)=55H
MOV 40H,A;(40H)=60H
SWAP A;A=06H
MOV 50H,A;(50H)=06H
XCH A,R2;A=32H,R2=06H
MOV @R0,A ;(R0)=(30H)=32H
所以:
A= 32H ,R0= 30H ,R1= 31H ,R2= 06H ,(30H)= 32H ,
(31H)= 55H ,(32H)= 60H ,(40H)= 60H ,(50H)= 06H
7.执行下面程序后,试问:
A=?
ORG 1000H
MOV DPTR,#1020H
MOV A,#03H
MOVC A,@A+DPTR
RET
ORG 1020H
DB 56H,78H,65H,29H,10H
解:
ORG 1000H
MOV DPTR,#1020H;DPTR=1020H
MOV A,#03H;A=03H
MOVC A,@A+DPTR;A=(1023H)=29H
RET
ORG 1020H
DB 56H,78H,65H,29H,10H
所以:
A=29H
8.试用数据传送指令来实现下列要求的数据传送。
1)将R2中的内容送到R3中。
2)将内RAM 30H单元中的内容与外RAM 2040H单元中的内容交换。
3)将ROM 2040H单元中的数据存放在内RAM 50H单元中。
4)将外RAM 30H单元中的内容送到R2中。
5)将R2与R3中的内容进行交换。
6)将ROM 2100H单元中内容送外RAM 3165H单元中。
解:
1)MOVA,R2
MOVR3,A
2)MOVDPTR2040H
MOVXA,@DPTR
MOVR1,A
MOVA,30H
MOVX@DPTR,A
MOV30H,R1
3)MOVA,#00H
MOVDPTR,#2040H
MOVCA,@A+DPTR
MOV50H,A
4)MOVR0,#30H
MOVXA,@R0
MOVR2,A
5)XCHA,R2
XCHA,R3
XCHA,R2
6)MOVA,#00H
MOVDPTR,#2100H
MOVCA,@A+DPTR
MOVDPTR,#3165H
MOVX@DPTR,A
9.设A=7EH,R0=40H,(40H)=9AH,B=23H,Cy=1。
分别执行下列指令后,试问:
A=?
各标志位为什么状态?
1)ADD A,@R0
2)ADDC A,R0
3)SWAP A
4)XCH A,@R0
5)INC A
6)SUBB A,#56H
7)SUBB A,R0
8)RLC A
9)RR A
10)CPL A
11)ANL A,@R0
12)ORL A,#8FH
13)XRL A,40H
14)ANL 40H,A
15)ORL 40H,#0F0H
16)ANL A,#0FH
17)DEC A
18)MUL AB
19)DIV AB
20)RRC A
解:
1)ADD A,@R0
A=A+(R0)=A+(40H)=7EH+9AH=18H,Cy=1,AC=1,OV=0,P=0
2)ADDC A,R0
A=A+R0+Cy=7EH+40H+1=0BFH,Cy=0,AC=0,OV=1,P=1
3)SWAP A
A=0E7H
4)XCH A,@R0
A=(R0)=(40H)=9AH,(R0)=(40H)=A=7EH,P=0
5)INC A
A=A+1=7EH+1=7FH,P=1
6)SUBB A,#56H
A=A-56H-Cy=7EH-56H-1=27H,Cy=0,AC=0,OV=0,P=0
7)SUBB A,R0
A=A-R0-Cy=7EH-40H-1=3DH,Cy=0,AC=0,OV=0,P=1
8)RLC A
A=11111101B=0FDH,Cy=0,P=1
9)RR A
A=00111111B=3FH,P=0
10)CPL A
A=81H,P=0
11)ANL A,@R0
A=A∧(R0)=A∧(40H)=7EH∧9AH=1AH,P=1
12)ORL A,#8FH
A=A∨8FH=7EH∨8FH=0FFH,P=0
13)XRL A,40H
A=A⊕(40H)=7EH⊕9AH=0E4H,P=0
14)ANL 40H,A
(40H)=(40H)∧A=9AH∧7EH=1AH,A=7EH
15)ORL 40H,#0F0H
(40H)=(40H)∨0F0H=9AH∨0F0H=0FAH
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 曹克澄 课程 课后 习题 答案