单片机原理及其应用课后习题.答案.doc
《单片机原理及其应用课后习题.答案.doc》由会员分享,可在线阅读,更多相关《单片机原理及其应用课后习题.答案.doc(36页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、课后思考题级习题答案课后思考题级习题答案思考题与习题思考题与习题 1 1一、填空 1.单片机按照用途通常分为 通用型 和 专用型 。 2.单片机也称为 微控制器 和 单片微型计算机 。 二、简答 1.什么是单片机? 答:单片机也称微控制器,它是将中央处理器、程序处理器、数据处理器、 输入/输出接口、定时/计数器串行口、系统总线等集成在一个半导体芯片上的 微计算机,因此又称为单片微型计算机,简称为单片机。 2.简述单片机的特点和应用领域。答:(1)单片机体积小,应用系统结构简单,能满足很多应用领域对硬件 功能的要求。(2)单片机的可靠性高。(3)单片机的指令系统简单,易学易用。(4)单片机的发展
2、迅速,特别是最近几年,单片机的内部结构越来越完善。3.写出 AT89S51 与 AT89S52 芯片的主要区别。内部程序存储区容量不同,52 的程序存储空间为 8K,内部数据存储空间 为 256B,中断源 8 个,定时器计数器有 3 个,而 51 的程序存储空间为 4K, 内部数据存储空间为 128B,中断源 5 个,定时器计数器有 2 个。思考题与习题思考题与习题 2一、填空题 1.如果(PSW)=10H, 则内部 RAM 工作寄存器区的当前寄存器是第二 组寄存器,8 个寄存器的单元地址为 10H 17H 。 2.为寻址程序状态字 F0 位,可使用的地址和符号有 PSW.5 、 0D0H.5
3、 、 F0 和 0D5H 。 3.单片机复位后,(SP)= 07H ,P0P3= FFH ,PC= 0000H ,PSW= 00H A= 00H 。 4.AT89S51 单片机的程序存储器的寻址范围是由 PC 决定的,由于 AT89S51 单片机的 PC 是 16 位的,所以最大寻址范围为 64KB 。 5.写出位地址为 20H 所在的位,字节地址 24H.0 。 6.写出字节地址为 20H 的单元最高位的位地址为 07H ,最低位的位地址为 00H 。 7.如果晶振频率,则一个时钟周期为 1.66667E-7,一个机器周MHz6OSCf 期为 2us。 8. AT89S51 单片机共有 26
4、 个特殊功能寄存器。 9. AT89S51 单片机片外数据存储器最多可以扩展 64KB。 10.如果 CPU 从片外 ROM 的 0000H 单元开始执行程序,那么EA引脚应接 低电平。二、选择题 1.PC 的值是( C )。 A.当前指令前一条指令的地址 B.当前正在执行指令的地址 C.下一条指令的地址 D.控制器中指令寄存器的地址 2.对程序计数器 PC 的操作是( A )。 A.自动进行的 B.通过传送进行 C.通过加“1”指令进行的 D.通过减“1”指令进行 3.在 AT89S51 单片机中 P0 口作为( D )。 A.数据总线 B.地址总线 C.控制总线 D.数据总线和地址总线 4
5、. 在 AT89S51 单片机中( C )。 A.具有独立的专用的地址总线 B.P0 口和 P1 口作为地址总线 C.P0 口和 P2 口作为地址总线 D.P2 口和 P1 口作为地址总线 三、简答题 1.AT89S51 单片机的EA引脚有何功能?如果使用片内 ROM,该引脚该如何 处理? 答: EA为该引脚的第一功能,为访问程序存储器控制信号。 如果使用片内 ROM,则EA信号为高电平。 2.什么是指令周期,机器周期和时钟周期? 答:指令周期是 CPU 每取出并执行一条指令所需的全部时间;机器周期是 CPU 完成一个基本操作所需要的时间。时钟周期是指计算机主时钟的周期时间。3.堆栈的作用是什
6、么?在程序设计时,为什么要对堆栈指针 SP 重新赋值? 答:堆栈是一个特殊的存储区,主要功能是暂时存放数据和地址,通常用来保 护断点和现场;堆栈指针 SP 复位后指向 07H 单元,00H-1FH 为工作寄存器区, 20H-2FH 为位寻址区,这些单元有其他功能,因此在程序设计时,需要对 SP 重 新赋值。 4.单片机复位有几种方法? 答:1、上电复位 2、按键复位 3、看门狗复位 4、软件复位 5. AT89S51 单片机运行出错或程序陷入死循环时,如何摆脱困境?可以采用复位键进行复位,使单片机初始化,也可以在软件中使用看门狗。6. AT89S51 单片机 P0P3 口的驱动能力如何?如果想
7、获得较大的驱动能力, 采用低电平输出还是高电平输出? 答:P0 口每位可驱动 8 个 LSTTL 输入,而 P1.P2.P3 口的每一位的驱动能 力,只有 P0 口的一半。当 P0 口的某位为高电平时,可提供 400A 的电流;当 P0 口的某位为低电平(0.45V)时,可提供 3.2mA 的灌电流,如低电平允许提 高,灌电流可相应加大。所以,任何一个口要想获得较大的驱动能力,只能用 低电平输出。 7. AT89S51 单片机内部 RAM 低 128 单元划分为几个部分?每部分有什么特 点?答:工作寄存器区、位寻址区、用户 RAM 区。 每部分特点如下:00H-1FH 为工作寄存器区,共 32
8、 个单元,被分为 4 组, 每组有八个寄存器(R0-R7)。任意时刻,CPU 只能使用一组寄存器,当前正在使用的寄存器组被称为当前寄存器。在程序运行过程中如果不使用的寄存器也 可以作为 RAM 使用。 20H-2FH 为位寻址区,共 16 个单元。这 16 个单元可以作为字节单元使用, 同时这 16 个单元的每一位也可以单独使用,即位寻址。 30H-7FH 为用户 RAM 区,用于存放各种数据、中间结果,起到数据缓冲的 作用。在实际使用中,常需要把堆栈设在用户 RAM 中。 8. AT89S51 单片机的片内都包含了哪些功能部件?各个功能部件主要的功 能是什么? 答: 1 个微处理器(CPU)
9、; 128 个数据存储器(RAM)单元; 4KB Flash 程序存储器; 4 个 8 位可编程并行 I/O 口; 1 个全双工串行口; 2 个 16 位定时器/计数器; 1 个看门狗定时器; 1 个中断系统,5 个中断源,2 个优先级; 26 个特殊功能寄存器(SFR); 1 个看门狗定时器。 9.程序存储器的空间中,有 5 个特殊单元,分别对应 AT89S51 单片机 5 个 中断源的入口地址,写出这些单元的地址及对应的中断源。中断源中断入口地址 外部中断 00003H 定时/计数器 0 溢出中断000BH 外部中断 10013H 定时/计数器 1 溢出中断001BH 串行中断0023H1
10、0. AT89S51 单片机有几个存储器空间?画出它的存储器结构图。 AT89S51 单片机的有 3 个存储器空间,即片内片外统一编制的程序存储器, 片内数据存储器和片外数据存储器。11.什么是空闲方式?怎样进入和退出空闲方式? 答:空闲方式:CPU 处于休眠的状态,而片内所有其他外围设备保持工作 状态,即振荡器保持工作,时钟脉冲继续输出到中断、串行口、定时器等功能部件,使它们继续工作,但时钟脉冲不再送到 CPU,因而 CPU 停止工作。 进入:每当 CPU 执行一条将 IDL 位置 1 的指令,就使它进入空闲方式, CPU 即停止工作,进入空闲方式。 退出:两种:一是被允许的中断源请求中断时
11、,由内部的硬件电路清 0 IDL 位,终止空闲方式;另一种方式是硬件复位。RST 引脚上的复位信号直接将 IDL 为清 0,从而使单片机退出空闲方式。 12.什么是掉电方式?怎样进入和退出掉电方式?答:掉电:振荡器停止工作,单片机内部所有的功能部件全部停止工作。进入:CPU 执行一条将 PD 位置 1 的指令,就使单片机进入掉电方式。退出:唯一的方法是硬件复位,复位后单片机内部特殊功能寄存器的内容 被初始化,PCON=0,从而退出掉电方式。 13.AT89S5113.AT89S51 单片机的控制信号引脚有哪些?说出其功能单片机的控制信号引脚有哪些?说出其功能。 答: RST(9 脚):复位信号
12、输入端,高电平有效。当振荡器工作时,RST 引脚出 现两个机器周期以上高电平将使单片机复位。 ALE (30 脚):地址锁存控制信号。当访问外部程序存储器或数据存储器时, ALE 输出脉冲用于锁存低 8 位地址。 (29 脚):程序储存允许输出端,是外部程序存储器的读选通信号,PSEN 低电平有效。当 AT89S51 从外部程序存储器取指令时,每个机器周期两次 有效,即输出两个脉冲。当访问外部数据存储器,不会出现两次有效的PSEN 信号。 PSEN (31 脚): 为该引脚的第一功能,为访问程序存储器控制信号。当EAEA 信号为低电平时,对 ROM 的读操作限定在外部程序存储器;而当信号为EA
13、EA 高电平时,则对 ROM 的读操作是从内部程序存储器开始,并可延续至外部程序 存储器。 4 4、设计一个电路,使单片机的设计一个电路,使单片机的 P0P0 口能驱动口能驱动 8 8 只发光二极管。只发光二极管。思考题与习题思考题与习题 3 思考题与习题思考题与习题 3 一、填空1.假定外部数据存储器 3000H 单元的内容为 50H,执行下列指令后,累加器 A 中的内容为 50H 。 MOVDPTR,#3000HMOVX A,DPTR2.假定累加器 A 中的内容为 30H,DPTR 中的内容为 2000H,执行指令:MOVC A,A+DPTR后,把程序存储器 2030H 单元的内容送入累加
14、器 A 中。3.已知(30H)=21H,(31H)=04H,说明下列程序的功能,执行后(30H)= 04H ,(31H)= 21H 。PUSH 30H PUSH 31H POP 30H POP 31H 4.已知程序执行前,在 AT89S51 单片机片内 RAM 中,(A)=33H,(R0)=28H,(28H)=0BCH,写出执行如下程序后,(A) = 63H 。ANL A,#60HORL 28H,AXRL A,R0CPL A5.对程序存储器的读操作使用的指令 MOVC 指令 。6.对外部数据存储器的读操作使用的指令 MOVX 指令 。7.执行如下三条指令后,20H 单元的内容是 0FH M O
15、 V R 0,20H M O V 40H,0 F H M O V R 0,40H 二、判断判断以下指令的正误。(1) MOV R1,R2 (2)MOV 20H,R3 (3)DEC DPTR (4)INC DPTR (5)MOVX A,R1 (6)MOVC A,DPTR (7)PUSH DPTR (8)CLR R1 (9)MOV 20H,30H (10)MOV F0,C (11) CPL R7 (12)RC A 三、简答1.MCS-51 共有哪几种寻址方式?试举例说明。(1)寄存器寻址方式 MOV A,R2 (2)直接寻址方式 MOV A,30H (3)寄存器间接寻址方式 MOV A,R0 (4
16、)立即寻址 MOV A,#20H (5)变址寻址 MOVC A,A+ DPTR (6)相对寻址 SJMP rel (7)位寻址 MOV C, 0D5H;2.MCS-51 指令按功能可以分为哪几类?每类指令的作用是什么?数据传送类指令(28 条);数据传送是指将源地址单元中的数据传送到 目的地址单元中,且源地址单元中的数据保持不变,或者源地址单元中的数据 与目的地址单元中的数据互换。 算术运算类指令(24 条);这类指令中,大多数都要用累加器 A 来存放 源操作数,另一个操作数是工作寄存器 Rn、片内 RAM 单元或立即数。执行指 令时,CPU 总是将源操作数与累加器 A 中的操作数进行相应操作
17、,然后将结果 保留在累加器 A 中,同时会影响程序状态字 PSW 中的溢出标志 OV、进位标志 CY、辅助进位标志 AC 和奇偶标志位 P。 逻辑运算及移位类指令(25 条);在这类指令中,仅当目的操作数为累 加器 A 时对奇偶标志位 P 有影响,其余指令均不影响 PSW 的状态。 控制转移类指令(17 条); 位操作类指令(17 条)。MCS-51 系列单片机的硬件结构中有一个位处 理器,对位地址空间具有丰富的位操作指令。由于位操作数是“位”,取值只能 是 0 或 1,故又称为布尔操作指令。3.访问 SFR,可使用哪些寻址方式?寄存器寻址,直接寻址,位寻址4.执行指令:MOV A,R0 ;在
18、程序状态字 PSW 中 RS1=0,RS0=0; RS1=1,RS0=0 的两种情况下,上述指令执行结果有何不同?RS1=0,RS0=0 时,是将内部 RAM 00H 单元中的内容传送给累加器 A, RS1=1,RS0=0 时,是将内部 RAM 10H 单元中的内容传送给累加器 A4.SJMP(短转移)指令和 LJMP(长对转移)指令的目的地址的范围各是多少?SJMP 指令的目的地址范围是-128B+127B;LJMP 指令的目的地址范围是 64KB。5.JB 指令和 JBC 指令的区别是什么?6.答:这类指令是判断直接寻址位是否为“1”或为“0”,当条件满足时转移,否则继续顺序执行。而 JB
19、C 指令当条件满足时,指令执行后同时将该位清“0”。7.指出下列每条指令的寻址方式。(1)MOV A,40H ;直接寻址(2)MOV 30H,#00H ;立即寻址(3)SJMP LOOP ;相对寻址(4)MOVC A,A+DPTR ;变址寻址(5)MOVX A,R0 ;寄存器寻址(6)MOV C,20H ;位寻址(7)MOV 20H,R3 ;寄存器寻址(8)MOV 31H,20H ;直接寻址8.已知程序执行前,在 AT89S51 单片机片内 RAM (10H)=20H,(20H)=33H,(33H)=45H,(45H)=56H,(P1)=30H。分析下列程序按顺序执行每条指令后的结果。MOV
20、A,33H ;(A)=45HMOV R1,A ;(R1)=45HMOV R1,#0FFH ;(45H)0FFHMOV 45H,33H ;(45H)=45HMOV R0,#10H ;(R0)=10HMOV A,R0 ;(A)=20HMOV P1,#0FFH ;(P1)=0FFHMOV A ,P1; ;(P1)=30HMOV 20H,A ;(20H)=30H9.已知程序执行前,在 AT89S51 单片机片内 RAM 中,(A)=85H,(R0)=20H,(20H)=0AFH,(Cy)=1,(21H)=0FFH。写出下列指令独立执行后寄存器和存储单元的内容,若该指令影响标志位,写出 CY、AC、OV
21、 和 P 的值。ADD A,R0 ;CY=1,AC=1,OV=1,P=1 ,(A)=34HADDC A, 21H ; CY=1,AC=1, P=1,OV=0 ,(A)=85HSWAP A ; (A)=58H ,P=1SUBB A,#50H ; CY=0,AC=0, P=1,OV=1 ,(A)=34HDEC R0 ;R0=1FHXCHD A,R0 ;(A)=8FH,(20H)=0A5H,P=110. 写出完成如下要求的指令,但是不能改变未涉及位的内容。(1)把 ACC.3, ACC.4,ACC.5 和 ACC.6 置“1”。ORL A,#01111000B(2)把累加器 A 的中间 4 位清“0
22、”。ANL A,#11000011B(3)将内部数据存储器 10H 单元中的数据的高 2 位,低 3 位清“0”。ANL 10H,#00111000B(4)将内部数据存储器 50H 单元中的数据所有位取反。XRL 50H,#11111111B(5)将内部数据存储器 40H 单元中的数据高 4 位取反。XRL 40H,#11110000B(6)将内部数据存储器 10H 单元中的数据低 3 位置“1”。ORL 10H,#00000111B11.分析执行下列指令序列所实现的逻辑运算式MOV C,P1.0 ANL C,/P1.1 MOV 20H, CMOV C,/P1.0 ANL C, P1.1 OR
23、L C, 20HMOV P3.0,C P3.0=(P1.0/P1.1)(/P1.0P1.1) 思考题与习题思考题与习题 4一、简答题一、简答题 1.什么是汇编语言源程序、汇编、汇编程序? (1)使用汇编语言编写的程序称为汇编语言源程序。 (2)汇编语言程序不能直接在计算机上运行,需要将它翻译成机器语言程序, 也就是目标代码程序,这个翻译过程称为汇编。 (3)完成汇编任务的程序成为汇编程序。 2.什么叫伪指令,有什么作用? 所谓伪指令是 告诉汇编程序应该如何完成汇编工作,只有在汇编前的源程 序中才有伪指令,而在汇编后没有机器代码产生。 伪指令具有控制汇编程序的输入输出、定义数据和符号、条件汇编、
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 及其 应用 课后 习题 答案
限制150内