单片机第2章练习题参考答案
- 格式:doc
- 大小:46.50 KB
- 文档页数:4
第二章习题参考答案一、填空题:1、当MCS-51引脚ALE有效时,表示从P0口稳定地送出了低8位地址。
2、MCS-51的堆栈是软件填写堆栈指针临时在片内数据存储器内开辟的区域。
3、当使用8751且EA=1,程序存储器地址小于 1000H 时,访问的是片内ROM。
4、MCS-51系统中,当PSEN信号有效时,表示CPU要从外部程序存储器读取信息。
5、MCS-51有4组工作寄存器,它们的地址范围是 00H~1FH 。
6、MCS-51片内20H~2FH范围内的数据存储器,既可以字节寻址又可以位寻址。
7、PSW中RS1 RS0=10时,R2的地址为 12H 。
8、PSW中RS1 RS0=11时,R2的地址为 1AH 。
9、单片机系统复位后,(PSW)=00H,因此片内RAM寄存区的当前寄存器是第 0 组,8个寄存器的单元地址为 00H ~ 07H 。
10、PC复位后为 0000H 。
11、一个机器周期= 12 个振荡周期= 6 个时钟周期。
12、PC的内容为将要执行的的指令地址。
13、在MCS-51单片机中,如果采用6MHz晶振,1个机器周期为 2us 。
14、内部RAM中,位地址为30H的位,该位所在字节的字节地址为 26H 。
15、若A中的内容为63H,那么,P标志位的值为 0 。
16、8051单片机复位后,R4所对应的存储单元的地址为 04H ,因上电时PSW=00H 。
这时当前的工作寄存器区是第 0 工作寄存器区。
17、使用8031芯片时,需将/EA引脚接低电平,因为其片内无程序存储器。
18、片内RAM低128个单元划分为哪3个主要部分:工作寄存器区、位寻址区和用户RAM区。
19、通过堆栈操作实现子程序调用,首先就要把 PC 的内容入栈,以进行断点保护。
调用返回时,再进行出栈保护,把保护的断点送回到 PC 。
20、MCS-51单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为MCS-51的PC是16位的,因此其寻址的范围为 64 KB。
第二章习题参考答案一、填空题:1、当MCS-51引脚ALE有效时,表示从P0口稳定地送出了低8位地址。
2、MCS-51的堆栈就是软件填写堆栈指针临时在片内数据存储器内开辟的区域。
3、当使用8751且EA=1,程序存储器地址小于 1000H 时,访问的就是片内ROM。
4、MCS-51系统中,当PSEN信号有效时,表示CPU要从外部程序存储器读取信息。
5、MCS-51有4组工作寄存器,它们的地址范围就是 00H~1FH 。
6、MCS-51片内20H~2FH范围内的数据存储器,既可以字节寻址又可以位寻址。
7、PSW中RS1 RS0=10时,R2的地址为 12H 。
8、PSW中RS1 RS0=11时,R2的地址为 1AH 。
9、单片机系统复位后,(PSW)=00H,因此片内RAM寄存区的当前寄存器就是第 0 组,8个寄存器的单元地址为 00H ~ 07H 。
10、PC复位后为 0000H 。
11、一个机器周期= 12 个振荡周期= 6 个时钟周期。
12、PC的内容为将要执行的的指令地址。
13、在MCS-51单片机中,如果采用6MHz晶振,1个机器周期为 2us 。
14、内部RAM中,位地址为30H的位,该位所在字节的字节地址为 26H 。
15、若A中的内容为63H,那么,P标志位的值为 0 。
16、8051单片机复位后,R4所对应的存储单元的地址为 04H ,因上电时PSW=00H 。
这时当前的工作寄存器区就是第 0 工作寄存器区。
17、使用8031芯片时,需将/EA引脚接低电平,因为其片内无程序存储器。
18、片内RAM低128个单元划分为哪3个主要部分: 工作寄存器区、位寻址区与用户RAM区。
19、通过堆栈操作实现子程序调用,首先就要把 PC 的内容入栈,以进行断点保护。
调用返回时,再进行出栈保护,把保护的断点送回到 PC 。
20、MCS-51单片机程序存储器的寻址范围就是由程序计数器PC的位数所决定的,因为MCS-51的PC就是16位的,因此其寻址的范围为 64 KB。
单片机练习题第二章答案单片机练习题第二章答案单片机是一种非常重要的电子器件,广泛应用于各个领域。
为了更好地掌握单片机的知识和技能,我们需要进行一些练习题的训练。
本文将为大家提供单片机练习题第二章的答案,希望能对大家的学习有所帮助。
第一题:请编写一段代码,实现将一个8位二进制数的高4位和低4位交换的功能。
答案:以下是实现该功能的代码:```c#include <reg52.h>void main(){unsigned char num = 0b11001100; // 待交换的二进制数unsigned char high = 0; // 高4位unsigned char low = 0; // 低4位high = (num & 0xF0) >> 4; // 取出高4位low = (num & 0x0F) << 4; // 取出低4位num = high | low; // 交换高低4位while (1){// 循环执行其他操作}}```第二题:请编写一段代码,实现将一个8位二进制数的第2位和第6位取反的功能。
答案:以下是实现该功能的代码:```c#include <reg52.h>void main(){unsigned char num = 0b11001100; // 待取反的二进制数num ^= (1 << 2); // 第2位取反num ^= (1 << 6); // 第6位取反while (1){// 循环执行其他操作}}```第三题:请编写一段代码,实现将一个8位二进制数的第3位和第7位置1的功能。
答案:以下是实现该功能的代码:```c#include <reg52.h>void main(){unsigned char num = 0b11001100; // 待操作的二进制数num |= (1 << 3); // 第3位置1num |= (1 << 7); // 第7位置1while (1){// 循环执行其他操作}}```通过以上三个练习题的答案,我们可以看到单片机的位操作非常灵活,可以实现各种功能。
单片机原理及应用第2章习题解答单片机原理及应用(第2章)习题解答一、选择题1. 单片机是指由(A)构成的完备的微型计算机系统。
A. 单片机芯片及其外围外设B. 单个集成电路芯片C. 多个芯片集成在一起的电子设备D. 多个微处理器组成的计算机2. 单片机的处理能力主要取决于(B)。
A. 单片机的价格B. 单片机的工作频率C. 单片机的外围外设D. 单片机的存储容量3. 单片机的工作频率是指单片机在单位时间内处理指令的(D)。
A. 速度B. 稳定性C. 精度D. 高低电平切换次数4. 单片机的开发语言主要有(C)。
A. 汇编语言B. 高级语言C. 汇编语言和高级语言D. 机器语言5. 单片机最主要的应用领域是(A)。
A. 嵌入式系统B. 个人电脑C. 服务器系统D. 移动设备二、判断题1. 单片机是一种集成电路芯片,包含CPU、存储器和各种外设。
(错误)2. 单片机的外围外设包括输入输出口、定时器、计数器等。
(正确)3. 单片机的价格主要取决于工作频率。
(错误)4. 单片机可以使用汇编语言和高级语言进行编程。
(正确)5. 单片机在个人电脑中得到了广泛的应用。
(错误)三、简答题1. 请简要介绍单片机的基本组成部分。
单片机由核心处理单元、存储器、输入输出口和定时器计数器等外围外设组成。
其中,核心处理单元包括CPU和控制器,负责执行指令和控制系统的运行;存储器用于存储程序和数据;输入输出口用于与外部设备进行数据交换;定时器计数器用于生成精确的时间延迟和定时。
2. 单片机的工作频率与性能有何关系?单片机的工作频率是指在单位时间内处理指令的高低电平切换次数。
工作频率越高,单片机的处理速度越快,性能越好。
高工作频率可以提高单片机的运行速度,从而提高系统的响应能力和处理能力。
3. 请简述单片机的应用领域。
单片机最主要的应用领域是嵌入式系统。
嵌入式系统是将计算机技术应用于各个领域的特定目的的设备中,包括家用电器、汽车电子、工业控制、医疗设备等。
第2章思考题及习题2参考答案一、填空1. 在AT89S52单片机中,如果采用6MHz晶振,一个机器周期为。
答:2µs2. AT89S52单片机的机器周期等于个时钟振荡周期。
答:123. 内部RAM中,位地址为40H、88H的位,该位所在字节的字节地址分别为和。
答:28H,88H4. 片内字节地址为2AH单元最低位的位地址是;片内字节地址为A8H单元的最低位的位地址为。
答:50H,A8H5. 若A中的内容为63H,那么,P标志位的值为。
答:06. AT89S52单片机复位后,R4所对应的存储单元的地址为,因上电时PSW= 。
这时当前的工作寄存器区是组工作寄存器区。
答:04H,00H,0。
7. 内部RAM中,可作为工作寄存器区的单元地址为 H~ H。
答:00H,1FH8. 通过堆栈操作实现子程序调用时,首先要把的内容入栈,以进行断点保护。
调用子程序返回指令时,再进行出栈保护,把保护的断点送回到,先弹出的是原来中的内容。
答:PC, PC,PCH9. AT89S52单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为AT89S52单片机的PC是16位的,因此其寻址的范围为 KB。
答:6410. AT89S52单片机复位时,P0~P3口的各引脚为电平。
答:高11. AT89S52单片机使用片外振荡器作为时钟信号时,引脚XTAL1接,引脚XTAL2的接法是。
答:片外振荡器的输出信号,悬空12. AT89S52单片机复位时,堆栈指针SP中的内容为,程序指针PC中的内容为。
答:07H,0000H二、单选1. 程序在运行中,当前PC的值是。
A.当前正在执行指令的前一条指令的地址 B.当前正在执行指令的地址。
C.当前正在执行指令的下一条指令的首地址 D.控制器中指令寄存器的地址。
答:C2. 判断下列哪一种说法是正确的?A.PC是一个可寻址的寄存器 B.单片机的主频越高,其运算速度越快。
C.AT89S52单片机中的一个机器周期为1µsD.特殊功能寄存器SP内存放的是堆栈栈顶单元的内容。
一、填空题:1、当MCS-51引脚ALE有效时,表示从P0口稳定地送出了低8位地址。
2、MCS-51的堆栈是软件填写堆栈指针临时在片内数据存储器内开辟的区域。
3、当使用8751且EA=1,程序存储器地址小于 1000H 时,访问的是片内ROM。
4、MCS-51系统中,当PSEN信号有效时,表示CPU要从外部程序存储器读取信息。
5、MCS-51有4组工作寄存器,它们的地址范围是 00H~1FH 。
6、MCS-51片内20H~2FH范围内的数据存储器,既可以字节寻址又可以位寻址。
7、PSW中RS1 RS0=10时,R2的地址为 12H 。
8、PSW中RS1 RS0=11时,R2的地址为 1AH 。
9、单片机系统复位后,(PSW)=00H,因此片内RAM寄存区的当前寄存器是第 0 组,8个寄存器的单元地址为 00H ~ 07H 。
10、PC复位后为 0000H 。
11、一个机器周期= 12 个振荡周期= 6 个时钟周期。
12、PC的内容为将要执行的的指令地址。
13、在MCS-51单片机中,如果采用6MHz晶振,1个机器周期为 2us 。
14、内部RAM中,位地址为30H的位,该位所在字节的字节地址为 26H 。
15、若A中的内容为63H,那么,P标志位的值为 0 。
16、8051单片机复位后,R4所对应的存储单元的地址为 04H ,因上电时PSW=00H 。
这时当前的工作寄存器区是第 0 工作寄存器区。
17、使用8031芯片时,需将/EA引脚接低电平,因为其片内无程序存储器。
18、片内RAM低128个单元划分为哪3个主要部分:工作寄存器区、位寻址区和用户RAM区。
19、通过堆栈操作实现子程序调用,首先就要把 PC 的内容入栈,以进行断点保护。
调用返回时,再进行出栈保护,把保护的断点送回到 PC 。
20、MCS-51单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为MCS-51的PC是16位的,因此其寻址的范围为 64 KB。
单片机第二章习题参考答案单片机第二章习题参考答案在学习单片机的过程中,习题是一个非常重要的环节。
通过解答习题,我们可以巩固所学的知识,提高自己的编程能力。
本文将为大家提供单片机第二章习题的参考答案,希望对大家的学习有所帮助。
1. 请问什么是单片机?答:单片机是一种集成电路芯片,具有微处理器、存储器、输入输出接口等功能。
它可以独立运行,完成各种控制任务。
2. 请问单片机的主要特点有哪些?答:单片机的主要特点包括:体积小、功耗低、成本低、可编程性强、可靠性高等。
3. 请问单片机的发展历程是怎样的?答:单片机的发展历程可以分为三个阶段。
第一阶段是20世纪70年代,单片机刚刚出现,功能简单,体积大,功耗高。
第二阶段是80年代,单片机逐渐普及,功能不断增强,体积和功耗有所改善。
第三阶段是90年代至今,单片机进一步发展,功能更加强大,体积更小,功耗更低。
4. 请问单片机的工作原理是什么?答:单片机的工作原理是通过运算器、控制器、存储器和输入输出接口等组成的系统来完成各种控制任务。
运算器用于进行运算,控制器用于控制程序的执行,存储器用于存储程序和数据,输入输出接口用于与外部设备进行数据交互。
5. 请问单片机的编程语言有哪些?答:单片机的编程语言主要有汇编语言和高级语言两种。
汇编语言是单片机最底层的语言,直接操作硬件。
高级语言包括C语言、Pascal语言等,相对于汇编语言来说更加易学易用。
6. 请问单片机的程序是如何运行的?答:单片机的程序是按照一定的逻辑顺序执行的。
当单片机上电后,首先会执行复位操作,然后按照程序的指令逐条执行,直到程序结束或者遇到跳转指令。
7. 请问单片机的输入输出方式有哪些?答:单片机的输入输出方式主要有并行输入输出和串行输入输出两种。
并行输入输出是指同时传输多个位的数据,适用于数据量大的情况。
串行输入输出是指逐位传输数据,适用于数据量小的情况。
8. 请问单片机的中断是什么?答:单片机的中断是一种特殊的程序执行方式。
一、单项选择题1.MCS—51 单片机的CPU 主要的组成部分为A.运算器、控制器B.加法器、寄存器C.运算器、加法器D.运算器、译码器2.单片机能直接运行的程序叫。
A.源程序B。
汇编程序C。
目标程序D。
编译程序3.单片机中的程序计数器PC 用来。
A.存放指令B.存放正在执行的指令地址C.存放下一条指令地址D.存放上一条指令地址4.单片机上电复位后,PC 的内容和SP 的内容为。
A.0000H,00H B。
0000H,07H C。
0003H,07H D。
0800H,08H5.单片机8031 的EA 引脚。
A.必须接地B。
必须接+5V C。
可悬空D。
以上三种视需要而定6.PSW 中的RS1 和RS0 用来。
A.选择工作寄存器区号B。
指示复位 C。
选择定时器D。
选择工作方式7.对于8031 单片机,其内部RAM 。
A.只能位寻址B.只能字节寻址C.既可位寻址又可字节寻址D.少部分只能位寻址8.80C51 单片机若晶振频率为fosc=12MHz,则一个机器周期等于µS。
A.1/12 B.1/2 C.1 D.29.MCS—51 单片机的数据指针DPTR 是一个16 位的专用地址指针寄存器,主要用来。
A.存放指令B.存放16 位地址,作间址寄存器使用C.存放下一条指令地址D.存放上一条指令地址10.MCS—51 的片内外的 ROM 是统一编址的,如果EA 端保持高电平,8051 的程序计数器PC 在地址范围内。
A.0H—FFFFH B.0000H—FFFFH C.0001H—0FFFH D.0000H—0FFFH11.MCS—51 的专用寄存器SFR 中的堆栈指针SP 是一个特殊的存贮区,用来,它是按后进先出的原则存取数据的。
A.存放运算中间结果B.存放标志位C.暂存数据和地址D.存放待调试的程序12.单片机的堆栈指针SP 始终是指示。
A.堆栈底B.堆栈顶C.堆栈地址D.堆栈中间位置二、问答题1、80C51单片机芯片包含哪些主要逻辑功能部件?各有什么主要功能?2、MCS-51单片机的 EA信号有何功能?在使用 8031时 EA信号引脚应如何处理?3、简述程序状态字PSW中各个位的作用。
第2章习题答案一.选择题1.8051单片机用于选择内外程序存储器的控制信号是( B )(A)RST(B)EA(C)PSEN(D)ALE2.PC的值是( B )(A)当前正在执行指令的前一条指令的地址(B)当前正在执行指令的地址(如果当前指令执行完毕,则PC值为下一条指令的首地址)(C)当前正在执行指令的下一条指令的地址(D)控制器中指令寄存器的地址3.ALE信号有效的时候,表示( B )。
(A)从ROM中读取数据(B)从P0口可靠地送出地址低8位(C)从P0口送出数据(D)从RAM中读取数据4.8051复位时,下述说法正确的是( D )。
(A)(20H)=00H (B)SP=00H (C)SUBF=00H (D)TH0=00H5.外部中断1固定对应的中断入口地址为( C )。
(A)0003H (B)000BH (C)0013H (D)001BH6.P1口的每一位都能驱动( B )。
(A)2个TTL低电平负载(B)4个TTL低电平负载(C)8个TTL低电平负载(D)10个TTL低电平负载7.使用8751且EA=1时,则可以扩展ROM( B )。
(内外总和64KB)(A)64KB (B)60KB (C)56KB (D)58KB8.在扩展系统中,能够提供地址信号的高8位的端口是( C )。
(A)P0口(B)P1口(C)P2口(D)P3口9.内部RAM中具有位地址的区域是( B )。
(A)00H~1FH (B)20H~2FH (C)20H~3FH (D)30H~7FH二.填空题1.MCS—51单片机的P0~P3口均是双向 I/O口,其中的P0口和P2口除了可以进行数据的输入、输出外,通常还用来构建扩展系统的数据总线和地址总线,在P0~P3口中,真正的双向口为P0口,P1口、P2口、P3 为准双向口。
2.P2口在扩展系统当中通常用作地址总线的高8位,也可以作通用的I/O口使用。
3.8051的堆栈只可设置在片内RAM30H-7FH,堆栈寄存器SP是 8 位寄存器。
第2章 AT89S51单片机的硬件结构最佳参考答案1.答:AT89S51单片机的片内都集成了如下功能部件:(1)1个微处理器(CPU);(2)128个数据存储器(RAM)单元;(3)4K Flash程序存储器;(4)4个8位可编程并行I/O口(P0口、P1口、P2口、P3口);(5)1个全双工串行口;(6)2个16位定时器/计数器;(7)1个看门狗定时器;(8)一个中断系统,5个中断源,2个优先级;(9)25个特殊功能寄存器(SFR),(10)1个看门狗定时器。
2.答:当EA脚为高电平时,单片机读片内程序存储器(4K 字节Flash)中的内容,但在PC值超过0FFFH(即超出4K字节地址范围)时,将自动转向读外部程序存储器内的程序;当EA脚为低电平时,单片机只对外部程序存储器的地址为0000H~FFFFH中的内容进行读操作,单片机不理会片内的4K 字节的Flash程序存储器。
3.答:2µs4.答:1个机器周期等于12个时钟振荡周期。
5. 答:64K程序存储器空间中有5个特殊单元分别对应于5个中断源的中断服务程序入口地址,见下表:表5个中断源的中断入口地址6. 答:28H;88H。
7.答:50H;88H。
8.答:P标志位的值为0。
9.答:(A)错;(B)错;(C)对;(D)对。
10. 答:04H;00H;0组。
11.答:(A) 对;(B) 对;(C) 错;(D) 对。
12. 答:字节地址00H-1FH的单元可作为工作寄存器区。
13.答:(A) 错;(B) 错;(C) 错;(D) 错。
14.答:(C)。
15. 答:PC;PC。
16.答:64K字节。
17.P0口每位可驱动8个LSTTL输入,而P1、P2、P3口的每一位的驱动能力,只有P0口的一半。
当P0口的某位为高电平时,可提供400 A的电流;当P0口的某位为低电平(0.45V)时,可提供3.2mA的灌电流,如低电平允许提高,灌电流可相应加大。
习题1. MCS-51单片机由哪几个部分组成?答:MCS-51单片机主要由以下部分组成的:时钟电路、中央处理器(CPU)、存储器系统(RAM和ROM)、定时/计数器、并行接口、串行接口、中断系统及一些特殊功能寄存器(SFR)。
2. MCS-51的标志寄存器有多少位,各位的含义是什么?答:MCS-51的标志寄存器PSW有8位;D D D D D D DD7P含义如下:C(PSW.7):进位或借位标志位。
AC(PSW.6):辅助进位或借位可标志位。
F0(PSW.5):用户标志位。
是系统预留给用户自己定义的标志位。
RS1、RS0(PSW.4、PSW.3):寄存器组选择位。
可用软件置位或清零,用于从四组工作寄存器中选定当前的工作寄存器组。
OV(PSW.2):溢出标志位。
在加法或减法运算时,如运算的结果超出8位二进制数的范围,则OV置1,标志溢出,否则OV清零。
P(PSW.0):奇偶标志位。
用于记录指令执行后累加器A中1的个数的奇偶性。
若累加器A中1的个数为奇数,则P置位,若累加器A中1的个数为偶数,则P清零。
其中PSW.1未定义,可供用户使用。
3. 8051程序存储器分哪几部分,相互之间有什么关系?答:程序存储器从物理结构上分为片内程序存储器和片外程序存储器。
片内程序存储器集成在芯片内部,不同的芯片容量不一样。
片外程序存储器是外部用只读存储芯片扩展而来的,存储空间大小随存储芯片容量而定。
片内程序存储器和片外程序存储器的总空间大小不能超过64K字节。
片内程序存储器地址空间和片外程序存储器的低地址空间重叠。
通过引脚EA电平的高低来决定的。
EA接低电平,选择从片外程序存储器取指令;EA接高电平,选择从片内程序存储器取指令。
4. 在8051的存储器结构中,内部数据存储器可分为几个区域?各有什么特点?答:内部数据存储器总体上分为两部分:片内的随机存储块和特殊功能寄存器(SFR)块。
片内的随机存储块按功能可以分成以下几个部分:工作寄存器组区(00H~1FH单元)、位寻址区(20H~2FH)和一般RAM区(30H~7FH),其中还包含堆栈区(08H开始)。
第2章思考题及习题2参考答案一、填空1. 在AT89S52单片机中,如果采用6MHz晶振,一个机器周期为。
答:2µs2. AT89S52单片机的机器周期等于个时钟振荡周期。
答:123. 内部RAM中,位地址为40H、88H的位,该位所在字节的字节地址分别为和。
答:28H,88H4. 片内字节地址为2AH单元最低位的位地址是;片内字节地址为A8H单元的最低位的位地址为。
答:50H,A8H5. 若A中的内容为63H,那么,P标志位的值为。
答:06. AT89S52单片机复位后,R4所对应的存储单元的地址为,因上电时PSW= 。
这时当前的工作寄存器区是组工作寄存器区。
答:04H,00H,0。
7. 内部RAM中,可作为工作寄存器区的单元地址为 H~ H。
答:00H,1FH8. 通过堆栈操作实现子程序调用时,首先要把的内容入栈,以进行断点保护。
调用子程序返回指令时,再进行出栈保护,把保护的断点送回到,先弹出的是原来中的内容。
答:PC, PC,PCH9. AT89S52单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为AT89S52单片机的PC是16位的,因此其寻址的范围为 KB。
答:6410. AT89S52单片机复位时,P0~P3口的各引脚为电平。
答:高11. AT89S52单片机使用片外振荡器作为时钟信号时,引脚XTAL1接,引脚XTAL2的接法是。
答:片外振荡器的输出信号,悬空12. AT89S52单片机复位时,堆栈指针SP中的内容为,程序指针PC中的内容为。
答:07H,0000H二、单选1. 程序在运行中,当前PC的值是。
A.当前正在执行指令的前一条指令的地址 B.当前正在执行指令的地址。
C.当前正在执行指令的下一条指令的首地址 D.控制器中指令寄存器的地址。
答:C2. 判断下列哪一种说法是正确的?A.PC是一个可寻址的寄存器 B.单片机的主频越高,其运算速度越快。
C.AT89S52单片机中的一个机器周期为1µsD.特殊功能寄存器SP内存放的是堆栈栈顶单元的内容。
第2章部分习题参考解答1、试述MCS-51单片机内部有哪些主要逻辑部件并说出其功能,画出片内结构图。
MCS-51单片机的内部除包含CPU外,还包含程序存储器、数据存储器、定时器/计数器、并行I/O接口、串行I/O接口、总线控制逻辑和中断控制逻辑等逻辑部件,其结构框图如图所示:其中,CPU是单片机的最核心部分,它是整个单片机的控制和指挥中心,完成所有的计算和控制任务。
振荡器和时序逻辑,产生CPU工作所需要的内部时钟。
中断控制逻辑用来应付一些临时到达的突发事件,并能保证当有多个突发事件发生时,CPU能够有序地为这些事件进行服务,所有突发事件服务完成后CPU还能继续以前的工作。
并行I/O接口和串行I/O接口作为CPU与外部设备通信的信息传输通道。
程序存储器用于存放单片机的程序。
数据存储器用于存放内部待处理的数据和处理后的结果。
定时器/计数器主要是完成对外部输入脉冲的计数或者根据内部的时钟及定时设置,周期性的产生定时信号。
64K总线控制逻辑,用于产生外部64KB存储空间的有关读写控制信号。
2、MCS-51单片机有4个8位并行口(P0、P1、P2、P3),哪个口可作为地址/数据利用总线?P0口可作为地址/数据复用总线口。
3、P0口作为通用I/O口使用时,在输出状态下应注意什么?在输入状态下应注意什么?P0口作为通用I/O口使用时,输出级是漏极开路的,因此在输出状态下外部应加上拉电阻。
在输入状态下应先向端口锁存器写入1,这样引脚便处于悬浮状态,可作高阻抗输入。
5、MCS-51单片机的最大寻址空间是多少?为什么?MCS-51单片机,程序存储器空间采用片内、片外统一编址的方式,共有64KB,地址范围为000OH~FFFFH。
片内有256字节数据存储器地址空间,地址范围为00H~FFH。
片外数据存储器空间有64KB,其地址范围也是000OH~FFFFH。
7、MCS-51单片机片内低128字节的RAM中,分了几个基本区域?说出这些区域的名称。
第02章单⽚机指令系统与汇编语⾔程序设计习题解答第02章单⽚机指令系统与汇编语⾔程序设计习题解答⼀、填空题1. MCS-51单⽚机指令系统中有 111 条指令。
2. MCS-51单⽚机指令中,Rn表⽰ R0、R1、R2、R3、R4、R5、R6、R7中的⼀个。
3. MCS-51单⽚机指令中,@表⽰间接寻址。
4. MCS-51单⽚机指令中,$表⽰当前指令的⾸地址。
5. MCS-51单⽚机寻址⽅式有⽴即数、直接地址、寄存器、寄存器间接、变址、相对、位寻址等七种寻址⽅式。
6. 指令MOVC A, @A+PC的功能是将A的内容与PC当前值相加作为程序存储器地址,再将该地址单元的内容传送到A 。
7. 指令JBC CY, LOOP是 3 字节、 2 个机器周期指令。
8. 指令DA A的功能是对A中当前值进⾏⼗进制调整。
9. 调⽤⼦程序时,将PC当前值保存到堆栈。
10. MCS-51单⽚机堆栈操作的基本原则是先进后出。
⼆、简答题1. MCS-51单⽚机指令⼀般由哪⼏个部分组成?各部分的功能是什么?答:MCS-51单⽚机指令⼀般由标号、操作码助记符、操作数、注释四部分组成。
标号是⼀条指令的标志,是可选字段,与操作码之间⽤“:”隔开;设置标号的⽬的是为了⽅便调⽤或转移。
标号的选择应遵从下列规定:标号由1~8个字母或数字组成,也可以使⽤⼀个下划线符号“_”。
第⼀个字符必须是字母。
指令助记符或系统中保留使⽤的字符串不能作为标号。
标号后⾯需要有⼀个冒号。
⼀条语句可以有标号,也可以没有标号,取决于程序中其它语句是否需要访问这条语句。
操作码规定指令的功能,是⼀条指令的必备字段,如果没有操作码,就不能成为指令。
它与操作数之间⽤“空格”隔开。
操作数是指令操作的对象。
分为⽬的操作数和源操作数两类,它们之间⽤“,”分隔。
操作数是可选字段。
⼀条指令可以有0、1、2、3个操作数。
注释是对指令功能的说明解释。
以“;”开始。
2. 程序中,伪指令ORG和END的作⽤是什么?答:ORG⽤于定义汇编语⾔源程序或数据块存储的起始地址。
第2章部分习题参考解答1、试述MCS-51单片机内部有哪些主要逻辑部件并说出其功能,画出片内结构图。
MCS-51单片机的内部除包含CPU外,还包含程序存储器、数据存储器、定时器/计数器、并行I/O接口、串行I/O接口、总线控制逻辑和中断控制逻辑等逻辑部件,其结构框图如图所示:其中,CPU是单片机的最核心部分,它是整个单片机的控制和指挥中心,完成所有的计算和控制任务。
振荡器和时序逻辑,产生CPU工作所需要的内部时钟。
中断控制逻辑用来应付一些临时到达的突发事件,并能保证当有多个突发事件发生时,CPU能够有序地为这些事件进行服务,所有突发事件服务完成后CPU还能继续以前的工作。
并行I/O接口和串行I/O接口作为CPU 与外部设备通信的信息传输通道。
程序存储器用于存放单片机的程序。
数据存储器用于存放内部待处理的数据和处理后的结果。
定时器/计数器主要是完成对外部输入脉冲的计数或者根据内部的时钟及定时设置,周期性的产生定时信号。
64K总线控制逻辑,用于产生外部64KB存储空间的有关读写控制信号。
2、 MCS-51单片机有4个8位并行口(P0、P1、P2、P3),哪个口可作为地址/数据利用总线P0口可作为地址/数据复用总线口。
3、 P0口作为通用I/O口使用时,在输出状态下应注意什么在输入状态下应注意什么P0口作为通用I/O口使用时,输出级是漏极开路的,因此在输出状态下外部应加上拉电阻。
在输入状态下应先向端口锁存器写入1,这样引脚便处于悬浮状态,可作高阻抗输入。
5、 MCS-51单片机的最大寻址空间是多少为什么MCS-51单片机,程序存储器空间采用片内、片外统一编址的方式,共有64KB,地址范围为 000OH~FFFFH。
片内有256字节数据存储器地址空间,地址范围为 00H~FFH。
片外数据存储器空间有64KB,其地址范围也是 000OH~FFFFH。
7、 MCS-51单片机片内低128字节的RAM中,分了几个基本区域说出这些区域的名称。
第二章1、MCS-51系列单片机内部有哪些主要的逻辑部件?答:MCS-51系列单片机内部主要逻辑部件有:算术/逻辑部件ALU、累加器A(有时也叫ACC)、只读存储器ROM、随即存储器RAM、指令寄存器IR、程序计数器PC、定时器/计数器、I/O接口电路、程序状态寄存器PSW、寄存器组。
3、MCS-51内部RAM区功能如何分配?如何选用4组工作寄存器中的一组作为当前的工作寄存器组?位寻址区域的字节地址范围是多少?答:MCS-51单片机内部RAM共128B,地址空间为00H-7FH,按照功能分为用户区、位寻址区和寄存器工作区。
00H~1FH是32B单元的4个工作寄存器组,单片机执行程序时,具体使用哪一组是通过对PSW的RS1、RS0两位的设置来实现的。
可以位寻址的地址范围是20H~2FH的16B共128位的内部RAM区,按字节寻址的地址范围是30H~7FH共80B的内部RAM区。
5、8031设有4个8为并行端口,若实际应用8为I/O口,应使用P0~P3中的哪个端口传送?16位地址如何形成?答:(1)P1口是专门供用户使用的I/O口,是准双向接口,故可以使用P1口传送;(2)P0既可以做地址/数据总线使用,又可作通用I/O使用。
一方面用来输出外部存储器或I/O的低八位地址,另一方面作为8位数据输入/输出口,故由P0口输出16位地址的低八位。
(3)P2口作为通用I/O口使用,与P1口相同。
当外接存储器或I/O时,P2口给出地址的高八位,故P2 口输出16位地址的高八位。
8、MCS-51的时钟周期、机器周期、指令周期是如何分配的?当震荡频率为10MHz时,一个机器周期为多少微秒?答:CPU执行一条指令的时间称为指令周期,它是以机器周期为单位的。
MCS-51典型的指令周期为一个机器周期,每个机器周期由6个状态周期组成,每个状态周期由2个时钟周期(振荡周期)组成。
一个机器周期=6*一个状态周期=12*一个时钟周期=12/振荡周期当振荡周期为10MHz时,一个机器周期为12/10MHz=1.2us9、在MCS-51扩展系统中,片外程序存储器和片外数据存储器地址一样时,为什么不发生冲突?答:(1)、程序存储器和数据存储器物理上是独立的,寻址片外程序存储器和片外数据存储器的寻址方式、寻址空间和控制信号不同。
一、单项选择题
1.MCS—51单片机的CPU主要的组成部分为
A.运算器、控制器 B.加法器、寄存器 C.运算器、加法器 D.运算器、译码器
2.单片机能直接运行的程序叫。
A.源程序 B。
汇编程序 C。
目标程序 D。
编译程序
3.单片机中的程序计数器PC用来。
A.存放指令 B.存放正在执行的指令地址 C.存放下一条指令地址D.存放上一条指令地址
4.单片机上电复位后,PC的内容和SP的内容为。
A.0000H,00H B。
0000H,07H C。
0003H,07H D。
0800H,08H
5.单片机8031的EA引脚。
A.必须接地 B。
必须接+5V C。
可悬空 D。
以上三种视需要而定
6.PSW中的RS1和RS0用来。
A.选择工作寄存器区号 B。
指示复位 C。
选择定时器 D。
选择工作方式
7.对于8031单片机,其内部RAM 。
A.只能位寻址 B.只能字节寻址 C.既可位寻址又可字节寻址
D.少部分只能位寻址
8.80C51 单片机若晶振频率为fosc=12MHz,则一个机器周期等于µS。
A.1/12 B.1/2 C.1 D.2
9.MCS—51单片机的数据指针DPTR是一个16位的专用地址指针寄存器,主要用来。
A.存放指令 B.存放16位地址,作间址寄存器使用 C.存放下一条指令地址D.存放上一条指令地址
10.MCS—51的片内外的ROM是统一编址的,如果EA端保持高电平,8051的程序计数器PC
在地址范围内。
A.1000H—FFFFH B.0000H—FFFFH C.0001H—0FFFH D.0000H—0FFFH 11.MCS—51的专用寄存器SFR中的堆栈指针SP是一个特殊的存贮区,用来,它是按后进先出的原则存取数据的。
A.存放运算中间结果 B.存放标志位 C.暂存数据和地址 D.存放待调试的程序
12.单片机的堆栈指针SP始终是指示。
A.堆栈底 B.堆栈顶 C.堆栈地址 D.堆栈中间位置
二、问答题
1、80C51单片机芯片包含哪些主要逻辑功能部件?各有什么主要功能?
2、MCS-51单片机的 EA信号有何功能?在使用 8031时 EA信号引脚应如何处理?
3、简述程序状态字PSW中各个位的作用。
4、内部 RAM低 128 单元划分为哪 3个主要部分?说明各部分的使用特点。
5、程序计数器( PC)作为不可寻址寄存器,它有哪些特点?
6、堆栈有哪些功能?堆栈指示器( SP)的作用是什么?在程序设计时,为什么要对 SP重新赋值?
7、MCS-51单片机运行出错或程序进入死循环,如何摆脱困境?
8、什么是指令周期,机器周期和时钟周期?如何计算机器周期的确切时间?
9、使单片机复位有几种方法?复位后机器的初始状态如何?
10、已知一mcs51单片机系统外接晶体振荡器频率为11.059mhz,计算:单片机系统的拍节
p、状态s、机器周期所对应的时间是多
一、选择题
1-5 ACCBA
6-10 ACCAD
11-12 CB
二、问答题
1、80C51单片机芯片包含哪些主要逻辑功能部件?
答:80C51单片机是个完整的单片微型计算机。
芯片内部包括下列硬件资源:
(1)8位CPU;
(2)4KB的片内程序存储器ROM。
可寻址64KB程序存储器和64KB外部数据存储器;(3)128B内部 RAM;
(4)21个 SFR;
(5)4个8位并行I/O口(共32位I/O线);
(6)一个全双工的异步串行口;
(7)两个16位定时器/计数器;
(8)5个中断源,两个中断优先级;
(9)内部时钟发生器
2、MCS-51单片机的 EA信号有何功能?在使用 8031时 EA信号引脚应如何处理?
答:EA/V PP是双功能引脚,功能如下:
(1)EA接高电平时,在低4KB程序地址空间(0000H~0FFFH),CPU执行片内程序存储器的指令,当程序地址超出低4KB空间(1000H~FFFFH)时,CPU将自动执行片外程序存储器的指令。
(2)EA接低电平时,CPU只能执行外部程序存储器的指令。
8031单片机内部无ROM,必须外接程序存储器。
因此,8031的EA引脚必须接低电平。
3、简述程序状态字PSW中各个位的作用。
CY:进位标志。
用于表示Acc.7有否向更高位进位。
AC:辅助进位标志也叫半进位标志。
用于表示Acc.3有否向Acc.4进位
F0:用户标志位,由我们(编程人员)决定什么时候用,什么时候不用。
RS1、RS0:工作寄存器组选择位。
RS1、RS0 = 00 —— 0区(00H~07H)
RS1、RS0 = 01 —— 1区(08H~0FH)
RS1、RS0 = 10 —— 2区(10H~17H)
RS1、RS0 = 11 —— 3区(18H~1FH)
0V:溢出标志位。
P:奇偶校验位:它用来表示ALU运算结果中二进制数位“1”的个数的奇偶性。
若为奇数,则P=1,不然为0。
4、内部 RAM低 128 单元划分为哪 3个主要部分?说明各部分的使用特点。
答:80C51内部128B的数据RAM区,包括有工作寄存器组区、可直接位寻址区和数据缓冲区。
各区域的特性如下:
(1)00H~1FH为工作寄存器组区,共分4组,每组占用8个RAM字节单元,每个单元作为一个工作寄存器,每组的8个单元分别定义为8个工作寄存器R0~R7。
当前工作寄存器组的选择是由程序状态字PSW的RS1、RS0两位来确定。
如果
实际应用中并不需要使用工作寄存器或不需要使用4组工作寄存器,不使用的
工作寄存器组的区域仍然可作为一般数据缓冲区使用,用直接寻址或用Ri的寄
存器间接寻址来访问。
(2)20H~2FH为可位寻址区域,这16个字节的每一位都有一个地址,编址为00H~7FH。
当然,位寻址区也可以用作字节寻址的一般数据缓冲区使用。
(3)30H~7FH为堆栈、数据缓冲区。
5、程序计数器( PC)作为不可寻址寄存器,它有哪些特点?
程序计数器PC是16位的,它总是存放着下一个要取的指令的16位的存储单元的地址,每当完成一个字节后,PC内容自动加一,为下一个字节做好准备。
6、堆栈有哪些功能?堆栈指示器( SP)的作用是什么?在程序设计时,为什么要对 SP重新赋值?
堆栈在中端过程中用来保护现场数据,复位后SP=7H,而堆栈一般设置在通用ROM区
(30H—7FH),在系统初始化时候要从新设置。
7、MCS-51单片机运行出错或程序进入死循环,如何摆脱困境?
通过复位电路复位
8、什么是指令周期,机器周期和时钟周期?如何计算机器周期的确切时间?
指令周期:指令的执行时间
机器周期:晶振周期的12分频
时钟周期:晶振周期的2分频
9、使单片机复位有几种方法?复位后机器的初始状态如何?
①上电复位
②按键与上电复位
复位后:PC=0000H P0-P3为FFH SP=07H PSW=00H IP\IE\PCON有效位都为零。
10、已知一mcs51单片机系统外接晶体振荡器频率为12mhz,计算:单片机系统的拍节p、
状态s、机器周期所对应的时间是多少?
解:晶振是12MHZ 晶振的周期为1/12微秒
拍节:1/6秒
S状态周期1/2微秒
机器周期 1微秒
补充:MCS-51的 4个 I/O口在使用上有哪些分工和特点?(与STC12C5A60S2有区别)
P0口是一个真正的双向口,而其它的三个是准双向口.
.P0口既可以作为I/O口又可以作为地址总线,作I/O口时为提高其驱动能力通常要外接上拉电阻,而作地址总线时不需要上拉,但只作为低8位地址.
.P1口作I/O口时与P2,P3一样不要外接上拉电阻,但是作输入使用时应注意先向其写"1". . P2口除了作I/O口外,还能作高8位地址总线
P3口除了作I/O口外,还具有复用功能,比如可以作串口,外部中断等等.。