单片机中空间和堆栈的意义
- 格式:docx
- 大小:10.94 KB
- 文档页数:2
单片微机原理及应用课后习题答案第一章单片机基础1-1单片机的发展分为几个阶段?答:到目前为止,单片机的发展大致分为五个阶段:第一阶段:单片机发展的初级阶段。
第二阶段:低性能单片机阶段。
第三阶段:高性能单片机阶段。
第四阶段:16位MCU。
第五阶段:单片机在集成度、功能、速度、可靠性、应用领域等方面向更高水平发展。
1-2说明单片机的主要应用领域?答:由于单片机具有体积小、重量轻、价格便宜、功耗低、易扩展、可靠性高、控制功能强及运算速度快等特点,在国民经济建设、军工产品及家电器等领域得到了广泛的应用。
主要是:① 工业自动化;② 智能仪器;③ 消费电子产品;④ 表达⑤ 军品;⑥ 终端和外部设备控制;⑦ 多机分布式系统。
1-3mcs-51系列单片机芯片包括哪些功能部件?每个功能部件的功能是什么?答:MCS-51系列列单片机的内部结构:1.中央处理器cpu。
其主要完成单片机的运算和控制功能,mcs-51系列单片机的cpu不仅可以处理字节数据,还可以进行位变量的处理。
2.片内数据存储器ram。
ram用于存储单片机运行中的工作变量、中间结果和最终结果等。
3.片内程序存储器rom/eprom。
程序存储器既可以存放已编制的程序,也可以存放一些原始数据和表格。
4.特殊功能寄存器sfr。
sfr用以控制和管理内部算术逻辑部件、并行i/o口、定时/计数器、中断系统等功能模块的工作。
5.并行口。
一共有4个8位的并行i/o口:p0、p1、p2、p3。
p0是一个三态双向口,可作为地址/数据分时复用口,也可作为通用i/o口。
p1只能作为通用i/o口。
p2可以作为通用i/o口,也可作为在单片机扩展外部设备时,高8位地址总线使用。
p3除了作为通用准双向i/o接口外,各引脚还具有第二功能。
6.串行口。
有一个全双工的串行口,可以实现单片机与外设之间数据的逐位传送。
7.定时/计数器。
可以设置为定时方式或计数方式。
1-4mcs-51系列MCU的引脚中有多少条I/O线?它们类似于单片机的外部地址总线和数据总线什么关系?地址总线和数据总线各是多少位?说明准双向口的含义?答:mcs-51一共共有32个I/O引脚。
一、五大内存分区内存分成5个区,它们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。
1、栈区(StaCk):FIFo就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区。
里面的变量通常是局部变量、函数参数等。
2、堆区(heap):就是那些由new分配的内存块,它们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。
如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。
3、自由存储区:就是那些由malloc等分配的内存块,它和堆是十分相似的,不过它是用free 来结束自己的生命。
4、全局/静态存储区:全局变量和静态变量被分配到同一块内存中,在以前的C语言中,全局变量又分为初始化的和未初始化的,在C++里面没有这个区分了,他们共同占用同一块内存区。
5、常量存储区:这是一块比较特殊的存储区,它们里面存放的是常量,不允许修改(当然,你要通过非正当手段也可以修改,而且方法很多)code/data/stack内存主要分为代码段,数据段和堆栈。
代码段放程序代码,属于只读内存。
数据段存放全局变量,静态变量,常量等,堆里存放自己malloc或new出来的变量,其他变量就存放在栈里,堆栈之间空间是有浮动的。
数据段的内存会到程序执行完才释放。
调用函数先找到函数的入口地址,然后计算给函数的形参和临时变量在栈里分配空间,拷贝实参的副本传给形参,然后进行压栈操作,函数执行完再进行弹栈操作。
字符常量一般放在数据段,而且相同的字符常量只会存一份。
二、C语言程序的存储区域1、由C语言代码(文本文件)形成可执行程序(二进制文件),需要经过编译-汇编-连接三个阶段。
编译过程把C语言文本文件生成汇编程序,汇编过程把汇编程序形成二进制机器代码,连接过程则将各个源文件生成的二进制机器代码文件组合成一个文件。
2、C语言编写的程序经过编译-连接后,将形成一个统一文件,它由几个部分组成。
《单片机原理及应用》习题库单位:广东松山职业技术学院电气工程系自动化教研室编者:田亚娟等审核:《单片机原理及应用》精品课程项目组适用专业:电气自动化技术等专业一、填空题1.单片机与普通计算机的不同之处在于其将_CPU__、存储器和__I/O_3部分集成于一块芯片之上。
2.CPU主要由运算器和控制器组成。
CPU中的布尔处理器用来处理位操作。
3.MSC-51系列单片机中,片内无ROM的机型是8031 ,有4KB ROM的机型是_8051_,而有4KB EPROM 的机型是8751 。
4.-32的补码为11100000 B,补码11011010B代表的真值为_-38__D。
5.原码数BFH=_-63_D,原码数6EH=_110_D。
6.100的补码=_64_H,-100的补码= 9C H7.在8031单片机内部,其RAM高端128个字节的地址空间称为特殊功能寄存器或SFR 区,但其中仅有_21_个字节有实际意义。
8.通常单片机上电复位时PC=_0000_H,SP=_07_H,通用寄存器则采用第_0_组,这一组寄存器的地址范围是从_00 H~_07_H。
9.若PSW为18H,则选取的是第_3__组通用寄存器。
10.8031单片机复位后R4所对应的存储单元地址为_04_H,因上电时PSW=_00_H。
11.若A中数据为63H,那么PSW的最低位(即奇偶位P)为_0_。
12.在微机系统中,CPU是按照程序计数器PC 来确定程序的执行顺序的。
13.在8031单片机中,使用P2、P0口传送地址信号,且使用了P0口来传送数据信号,这里采用的是总线复用技术。
14.堆栈遵循先进后出(或后进先出)的数据存储原则,针对堆栈的两种操作为_PUSH_和_POP_。
15.当8051地RST端上保持两个机器周期以上低电平时,8051即发生复位。
16.使用8031单片机时需将EA引脚接_低__电平,因为其片内无程序存储器。
17.8位机中的补码数80H和7EH的真值分别为_-128__和_127 。
习题一1.什么是单片机,和微机相比拟,它有什么优点?2.请表达51系列单片机的主要产品及其特点。
3.除51系列单片机外,常用的单片机还有哪些型号,各有什么优点?4.单片机中常用的数制有哪些,它们之间相互如何转换?5.计算机中常用的二进制编码有哪些,请分别予以表达。
6.〔1〕10和〔-1〕10的原码、反码和补码分别是多少?习题二1.单片机主要应用在什么领域?2. 89C51单片机包含哪些主要逻辑功能部件? 各有什么主要功能?3.89C51单片机EA端如何使用?4.什么是机器周期、指令周期?89C51指令周期、机器周期和时钟周期的关系如何?当主频为12MHz时,一个机器周期等于多少微秒?执行一条最长的指令需多少微秒?5.如何认识89C51存储器空间在物理结构上可划分为四个空间,而在逻辑上又可划分为三个空间?各空间的寻址范围、寻址方式是什么?6.89C51有哪些主要的特殊功能存放器,分布在哪里?7.内部RAM低128B从功能和用途方面,可划分为哪三个区域?8.89C51内部RAM有几组工作存放器?每组工作存放器有几个工作存放器?存放器组的选择由什么决定?9.89C51的外部RAM和I/O口是如何编址的,如何寻址?10.89C51的程序存储器的寻址空间是多少,如何区别片内程序存储器和片外程序存储器的?11.89C51的位寻址区在哪里,位寻址空间是多少?12.什么是堆栈,什么是SP,89C51的堆栈位于什么地方,复位后堆栈指针初值是多少,一般将SP设置为多少?进栈、出栈时堆栈指针将怎样变化?13.单片机包括哪两种复位方式,在单片机应用系统中为何需要系统复位,复位后主要存放器的状态如何?14.89C51的P3口各引脚的第二功能是什么?15.89C51有几种低功耗方式,如何进入和退出?习题三1.什么是指令,什么是指令系统?2.89C51总共有多少条指令,分为哪几类?3.89C51有哪些寻址方式,各自的寻址空间如何?4.说明以下指令中源操作数采用的寻址方式。
简答题1.什么是指令系统?指令系统:计算机所能执行的全部指令的集合,它描述了计算机内全部的控制信息和“逻辑判断”能力。
不同计算机的指令系统包含的指令种类和数目也不同。
一般均包含算术运算型、逻辑运算型、数据传送型、判定和控制型、输入和输出型等指令。
2.什么是指令指令是指示计算机执行某种操作的命令,它由一串二进制数码组成。
3.什么是汇编语言?答:汇编:汇编语言源程序在交付计算机执行之前,需要先翻译成目标程序,这个翻译过程叫汇编。
4.什么是寻址方式答:寻址方式:寻址方式就是寻找指令中操作数或操作数所在地址的方式。
也就是如何找到存放操作数的地址,把操作数提取出来的方法。
5.什么是堆栈答:堆栈是在片内RAM中专门开辟出来的一个区域,数据的存取是以"后进先出"的结构方式处理的。
实质上,堆栈就是一个按照"后进先出"原则组织的一段内存区域。
6.什么是指令周期指令周期:指执行一条指令所占用的全部时间。
通常一个指令周期含1~4个机器周期。
7.串行数据传送的主要优点和用途是什么?答:串行数据传送的主要优点是硬件接口简单,接口端口少(2个)。
主要用于多个单片机系统之间的数据通信。
8.MC S一51指令集中有无“程序结束”指令?怎样实现“程序结束”功能?答:没有这样的指令。
但实现“程序结束”至少可以借助4种办法:①用原地踏步指令SJMP $ 死循环。
②在最后一条指令后面设断点,用断点执行方式运行程序。
③用单步方式执行程序。
④在末条指令之后附加一条LJMP监控显示器程序首地址或LJMP 0000H,返回监控状态。
9.中断服务子程序与普通子程序有哪些异同之处?2.中断服子程序与普通子程序的执行和返回有什么异同之处?答:中断服务子程序与普通子程序都是一种能完成某一特定任务的程序段。
其资源要为所有调用程序共享。
因此,子程序在结构上应具有独立性和通用性。
子程序的第一条指令的地址称为子程序的入口地址。
单片机原理与应用实验考查题及标准答案1.AT89S51内部四个并行I/O口各有什么异同?作用是什么?答:MCS-51单片机共有四个8位双向并行的I/O端口,每个端口都包括一个锁存器、一个输出驱动器和一个输入缓冲器。
但这四个端口的功能不全相同,P0口既可作一般I/O端口使用,又可作地址/数据总线使用;P1口是一个准双向并行口,作通用并行I/O口使用;P2口除了可作为通用I/O使用外,还可在CPU访问外部存储器时作高八位地址使用;P3口是一个多功能口除具有准双向I/O功能外,还具有第二功能。
2.开机复位后,CPU使用的是那组工作寄存器?他们的地址是设呢么?CPU如何确定和改变当前工作寄存器组?答:开机复位后,cpu使用第0组工作寄存器,地址是00H~07H,可通过对PSW状态字寄存器中的RS1和RS0两位的设置来确定和改变CPU当前使用的工作寄存器组3.微处理器,微计算机,微处理机,CPU,单片机,嵌入式处理器之间有何区别?答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。
而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。
嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。
目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。
嵌入式微处理器相当于通用计算机中的CPU。
与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。
而嵌入式微处理器仅仅相当于单片机中的中央处理器。
为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。
4.AT89S51单片机的片内都集成了哪些功能部件?答: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个看门狗定时器。
51单片机堆栈深入剖析用C语言进行MCS51系列单片机程序设计是单片机开发和应用的必然趋势。
Keil公司的C51编译器支持经典8051和8051派生产品的版本,通称为Cx51。
应该说,Cx51是C语言在MCS51单片机上的扩展,既有C语言的共性,又有它自己的特点。
本文介绍的是Cx51程序设计时堆栈的计算方法。
1.堆栈的溢出问题。
MCS51系列单片机将堆栈设置在片内RAM中,由于片内RAM资源有限,堆栈区的范围也是有限的。
堆栈区留得太大,会减少其他数据的存放空间,留得太少则很容易溢出。
所谓堆栈溢出,是指在堆栈区已经满了的时候还要进行新的压栈操作,这时只好将压栈的内容存放到非堆栈区的特殊功能寄存器(SFR)中或者堆栈外的数据区中。
特殊功能寄存器的内容影响系统的状态,数据区的内容又很容易被程序修改,这样一来,之后进行出栈操作(如子程序返回)时内容已变样,程序也就乱套了。
因此,堆栈区必须留够,宁可大一些。
要在Cx51程序设计中防止堆栈的溢出,要解决两个问题:第一,精确计算系统分配给用户的堆栈大小,假设是M;第二,精确计算用户需要堆栈的大小,假设是N。
要求M≥N,下面分别分析这两个问题。
2.计算系统分配给用户的堆栈大小Cx51程序设计中,因为动态局部变量是长驻内存中的,实际上相当于局部静态变量,即使在函数调用结束时也不释放空间(这一点不同于标准C语言)。
Cx51编译器按照用户的设置,将所有的变量存放在片内和片外的RAM中。
片内变量分配好空间后,将剩下的空间全部作为堆栈空间,这个空间是最大可能的堆栈空间。
当然,因为Cx51是一种可以访问寄存器的C语言(特殊功能寄存器),因此可在程序中访问SP,将堆栈空间设置得小一点。
不过,一般没有人这么做。
本文只是讨论放在片内RAM的变量。
我们把变量分为两种情况:①用作函数的参数和函数返回值的局部变量。
这种变量尽量在寄存器组中存放。
为了讨论方便,假设统一用寄存器组0,具体的地址为0x00~0x07。
第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 位寄存器。
MCS-51单片机存储器结构从用户的角度上,8051单片机有三个存储空间:1、片内外统一编址的64K的程序存储器地址空间(MOVC)2、256B的片内数据存储器的地址空间(MOV)3、以及64K片外数据存储器的地址空间(MOVX)在访问三个不同的逻辑空间时,应采用不同形式的指令,以产生不同的存储器空间的选通信号。
【程序内存ROM】寻址范围:0000H ~ FFFFH 容量64KBEA = 1,寻址内部ROM;EA = 0,寻址外部ROM地址长度:16位作用:存放程序及程序运行时所需的常数。
七个具有特殊含义的单元是:0000H ——系统复位,PC指向此处;0003H ——外部中断0入口000BH —— T0溢出中断入口0013H ——外中断1入口001BH —— T1溢出中断入口0023H ——串口中断入口002BH —— T2溢出中断入口【内部数据存储器RAM】物理上分为两大区:00H ~ 7FH(低128单元用户RAM 和高128单元SFR区)作用:作数据缓冲器用。
一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。
那么设计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。
程序相当于给微处理器处理问题的一系列命令。
其实程序和数据一样,都是由机器码组成的代码串。
只是程序代码则存放于程序存储器中。
MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。
(对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的EA端必须接地。
强制CPU从外部程序存储器读取程序。
)对于内部有ROM的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC 值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。
单片机应用技术试题库及答案-MCS—51单片机原理与结构作者:刘昆山一、判断题()1.MCS—51单片机是高档16位单片机。
×()2.MCS—51的产品8051与8031的区删是:8031片内无ROM。
()3.单片机的CPU从功能上可分为运算器和存贮器。
×()4.MCS-51的指令寄存器是一个8位寄存器,用于暂存待执行指令,等待译码。
()5.MCS—51的指令寄存器是对指令寄存器中的指令进行译码,将指令转变为执行此指令所需要的电信号。
()6.8051的累加器ACC是一个8位的寄存器,简称为A,用来存一个操作数或中间结果。
()7.8051的程序状态字寄存器PSW是一个8位的专用寄存器,用于存程序运行中的各种状态信息。
()8.MCS—51的程序存贮器用于存放运算中间结果。
×()9.MCS—51的数据存贮器在物理上和逻辑上都分为两个地址空间:一个是片内的256字节的RAM,另一个是片外最大可扩充64K字节的RAM。
()10.单片机的复位有上电自动复位和按钮手动复位两种,当单片机运行出错或进入死循环时,可按复位键重新启动。
()11.CPU的时钟周期为振荡器频率的倒数。
()12.单片机的一个机器周期是指完成某一个规定操作所需的时间,一般情况下,一个机器周期等于一个时钟周期组成。
×()13.单片机的指令周期是执行一条指令所需要的时间。
一般由若干个机器周期组成。
(×)14.单片机系统扩展时使用的锁存器,是用于锁存高8位地址。
(×)15.MCS—51单片机上电复位后,片内数据存储器的内容均为00H。
()16.当8051单片机的晶振频率为12MHZ时,ALE地址锁存信号端的输出频率为2MHZ的方脉冲。
()17.8051单片机片内RAM从00H~1FH的32个单元,不仅可以作工作寄存器使用,而且可作为RAM来读写。
(×)18.MCS—51单片机的片内存贮器称为程序存贮器。
1、MCS-51单片机的时钟周期与振荡周期之间有什么关系?一个机器周期的时序如何划分?答:时钟周期是单片机最基本的时间单位。
机器周期则是完成某一个规定操作所需的时间。
一个机器周期为6个时钟周期,共12个振荡周期性,依次表示为S1P1、S1P2、……S6P1、S6P2。
2、MCS-51单片机有几种复位方法?应注意的事项?答:上电复位和开关复位。
上电复位要求接通电源,自动实现复位操作。
开关复位要求在电源接通的条件下,在单片机运行期间,如果发生死机,用按钮开关操作使单片机复位。
3、MCS-51单片机内部包含哪些主要逻辑功能部件?答:(1)一个8位微处理器CPU。
(2)数据存储器RAM和特殊功能寄存器SFR。
(3)内部程序存储器ROM。
(4)两个定时/计数器,用以对外部事件进行计数,也可用作定时器。
(5)四个8位可编程的I/O(输入/输出)并行端口,每个端口既可做输入,也可做输出。
(6)一个串行端口,用于数据的串行通信。
4、什么是堆栈?堆栈有何作用?在程序设计时,有时为什么要对堆栈指针SP重新赋值?如果CPU在操作中要使用两组工作寄存器,你认为SP的初值应为多大?答:堆栈是一种按照“先进后出”或者“后进先出”规律存取数据的RAM区域由于程序中没有表识,所以要对SP重新赋值对指针SP重新赋值是因为堆栈空间有限,要给他赋首地址。
要使用两组工作寄存器,SP的值应该设置为10H。
5、MCS-51单片机的P0~P3四个I/O端口在结构上有何异同?使用时应注意的事项?答:80C51单片机的4个I/O端口在结构上时基本相同的,但又各具特点。
在无片外扩展存储器的系统中,这4个端口的每1位都可以作为I/O端口使用。
在作为一般的通用I/O输入时,都必须先向锁存器写入“1”,使输出驱动场效应管FET截止,以免误读数据。
在系统扩展片外存储器时,P2口作为高8位地址,P0口分时作为低8位地址和双向数据总线。
它们的主要不同点如下:(1)P0口的每一位可驱动8个LSTTL负载。
选择题:1.在8位机中,-50H的补码是()A.00110010B B.CFHC.10110010B D.CEH2.若存储器容量为32K X 16位,则()A.地址线为16根,数据线为32根B.地址线为32根,数据线为16根C.地址线为15根,数据线为16根D.地址线为16根,数据线为15根3.若以下ASCLL码中有奇偶校验位,采用偶校验的是()A.11001011B.11010110C.11000001D.110010014.在8位机中,下列十进制数中不发生溢出的是()。
A.+128 B.+257 C.-128 D.-2585.在下列指令中,不影响堆栈内容的指令是()。
A.RETB.LJMPC.LCALLD.POP6.操作数在寄存器中的寻址方式称为()寻址。
A.立即B.直接C.寄存器D.寄存器间接7.通常在单片机的应用系统中,存放程序的存储器可采用()A.ROM和RAM B.ROMC.RAMD.光盘8.在8051单片机中,下面哪个不属于特殊功能寄存器()A.PC B.IPC.SCON D.IE9.真值0表示形式唯一的机器数是()A.原码B.反码C.补码D.原码和反码10.8051单片机在进行无符号数比较时,应根据()标志位来判别A.OV B.Cy C.F0 D.AC11.在单片机应用系统中,为了提高数据总线的驱动能力,可采用()。
A.锁存器B.单向三态缓冲器C.OC门D.双向三态缓冲器填空题:1.单片机内有组成微机的主要功能部件CPU、存储器(ROM、RAM)和I/O口。
2.堆栈的特性是先进后出的特殊区域,8051的堆栈一般开辟在内部RAM的30H~7FH,其堆栈指针是SP。
3.MCS-51有一个全双工的异步串行口。
4.8051的一个机器周期包括6个状态、12个时钟周期(振荡器频率)。
5.8051内部RAM有4组工作寄存器,每组工作寄存器有8个工作寄存器。
6.特殊功能寄存器PSW的含义是寄存指令执行后操作结果的某些特征、为下一条指令提供状态。
单片机原理与C51语言程序设计与基础教程课后习题答案习题填空题1.一般而言,微型计算机包括、、、四个基本组成部分。
2.单片机是一块芯片上的微型计算机。
以为核心的硬件电路称为单片机系统,它属于地应用范畴。
3.Atmel 公司生产的CMOS型51系列单片机,具有内核,用代替ROM作为程序存储器,4.单片机根据工作温度可分为、和三种。
民用级的温度范围是0℃一70℃,工业级是-40℃~85℃,军用级是-55℃-125℃(不同厂家的划分标推可能不同。
5.在单片机领域内,ICE的含义是。
选择题1.单片机的工作电压一般为V?A 5VB 3VC 1VD 4V2.单片机作为微机的一种,它具有如下特点:A 具有优异的性能价格比B 集成度高、体积小、可靠性高C 控制功能强,开发应用方便D 低电压、低功耗。
3.民用级单片机的温度范围是:A -40℃~85℃B 0℃一70℃C -55℃-125℃D 0℃一50℃4.MCS-51系列单片机最多有个中端源。
A 3B 4C 5D 65.下列简写名称中不是单片机或单片机系统的是A MCUB SCMC ICED CPU问答题1.单片机常用的应用领域有哪些?2.我们如何学习单片机这么技术?3.单片机从用途上可分成哪几类?分别由什么用处?答案填空题1.运算器、控制器、存储器、输入输出接口2.单片机嵌入式系统3.MCS-51 Flash ROM4.民用级(商业级) 工业级军用级5.在线仿真器选择题1.A2.ABCD3.B4.C5.D问答题1.单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分如下几个范畴:(1)在智能仪器仪表上的应用单片机具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,广泛应用于仪器仪表中,结合不同类型的传感器,可实现诸如电压、功率、频率、湿度、温度、流量、速度、厚度、角度、长度、硬度、元素、压力等物理量的测量。
简答题部分1、51单片机内部集成的功能部件?MCS-51单片机在片内集成了中央处理器(CPU)、程序存储器(ROM)、数据存储器(RAM)、定时器/计数器、并行I/O接口、串行I/O接口和中断系统等几大单元。
CPU是整个单片机的核心部件,由运算器和控制器组成。
运算器可以完成算术运算和逻辑运算,其操作顺序在控制器控制下进行。
控制器是由程序计数器PC (Program Counter)、指令寄存器IR(Instruction Register)、指令译码器ID(Instruction Decoder)、定时控制逻辑和振荡器OSC等电路组成。
CPU根据PC中的地址将欲执行指令的指令码从存储器中取出,存放在IR中,ID对IR中的指令码进行译码,定时控制逻辑在OSC配合下对ID译码后的信号进行分时,以产生执行本条指令所需的全部信号。
程序存储器(ROM)用于存储程序、常数、表格等。
数据存储器(RAM)用于存储数据。
8051内部有两个16位可编程序的定时器/计数器T0和T1,均为二进制加1计数器。
可用于定时和对外部输入脉冲的计数。
8051的中断系统主要由中断允许控制器IE和中断优先级控制器IP等电路组成。
可实现对5个中断源的管理。
8051的中断系统主要由中断允许控制器IE和中断优先级控制器IP等电路组成。
其中,IE用于控制5个中断源中哪些中断请求被允许向CPU提出,哪些中断源的中断请求被禁止;IP用于控制5个中断源的中断请求的优先权级别。
I/O接口是MCS-51单片机对外部实现控制和信息交换的必经之路,用于信息传送过程中的速度匹配和增加它的负载能力。
可分为串行和并行I/O接口。
2、51的程序存储器、外部存储器、内部存储器各自的容量与地址范围?(小抄补充)1、片内外统一编址的64K的程序存储器地址空间(MOVC)2、256B的片内数据存储器的地址空间(MOV)3、以及64K片外数据存储器的地址空间(MOVX)在访问三个不同的逻辑空间时,应采用不同形式的指令以产生不同的存储器空间的选通信号。
《单片机原理及接口技术(修订本)》部分习题与参考答案第1章绪论1-2 什么叫单片机一个完整的单片机芯片至少有哪些部件答:将微处理器(CPU)、存储器、定时/计数器及输入输出接口电路等部件集成在一块集成电路上,称为单片微型计算机,简称单片机。
一个完整的单片机芯片至少有中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)、定时/计数器及I/O接口等部件。
1-5 Intel 公司的主要单片机产品分为哪几大系列各系列的区别何在答:Intel公司的MCS-48系列、MCS-51系列、MCS-96系列产品;48系列的单片机在片内集成4位CPU,片内含有多种I/O接口,有的根据不同用途还配有许多专用接口,价格便宜,控制功能强。
51系列的单片机在片内集成8位CPU、片内RAM为128字节,ROM为4K字节,4个并行I/O口、2个16位定时/计数器、串行接口、5个中断源。
96系列单片机CPU为16位,片内RAM为232字节,ROM为8K字节,片内带有高速输入输出部件,多通道10位A/D转换部件,中断处理为8级。
1-6 叙述51子系列与52子系列的区别答:51子系列包含8031/8051/8751三种型号,它们的基本组成、基本性能都相同,都具有一个8位CPU、片内数据存储器RAM128B、2个16位定时/计数器、有5个中断源,一个全双工串行接口,它们之间的区别在于片内程序存储器配置:8031片内没有ROM,使用时需在片外接EPROM。
8051片内含有4KB的掩模ROM,其中的程序是生产厂家制作芯片时烧制的。
8751片内含有4KB的EPROM,用户可以先用紫外线擦除器擦除,然后再利用开发机或编程器写入新的程序。
52子系列包含8032/8052/8752三种型号,52子系列与51子系列的区别在于:片内ROM 和RAM的容量比8051子系列各增加一倍,另外,增加了一个定时/计数器和一个中断源。
第2章 MCS-51系列单片机的结构及原理2-2 MCS-51单片机的引脚有何功能在使用8031时如何接法使用8751时如何接法答:引脚是片内外程序存储器的选择信号。
单片机多选题(新)内容1单片机基础知识012-0001、微型计算机中常用的进位计数制有()。
A.十进制B.二进制C.八进制D.五进制E.十六进制试题库:内容1单片机基础知识;正确答案:B、C、E;难度系数:1;计算机中常用的数码有()。
A.补码B.BCD码C.十进制D.二进制E.ASCII码试题库:内容1单片机基础知识;正确答案:A、B、D、E;难度系数:1;与十进制89相等的数为()。
A.59HB.10001001BC.131QD.1011001BE.(10001001)BCD试题库:内容1单片机基础知识;正确答案:A、C、D、E;难度系数:2;为方便运算,计算机中的正数永远用原码表示,而负数有三种表示法,即()。
A.原码B.真值C.反码D.机器码E.补码试题库:内容1单片机基础知识;正确答案:A、C、E;难度系数:1;用4位二进制数来表示1位十进制数的编码方法称为()。
A.二—十进制B.8421BCD码C.余3码D.二进制编码E.ASCII码试题库:内容1单片机基础知识;正确答案:A、B、C;难度系数:1;在MCS-51单片机中,()是程序存储器。
A.ROMB.EPROMC.RAMD.EEPROME.USB存储器试题库:内容1单片机基础知识;正确答案:A、B、D;难度系数:2;微型计算机一般由()组成的A.运算器B.控制器C.存储器D.输入部分E.输出部分试题库:内容1单片机基础知识;正确答案:A、B、C、D、E;难度系数:1;下面关于单片机的描述正确的是()A.单片机是芯片级的计算机B.单片机是在一块硅片上集成了各种部件的微型计算机C.单片机又称微控制器D.单片机通常以最小系统运行,可以“单片”工作。
试题库:内容1单片机基础知识;正确答案:A、B、C、D;难度系数:2;单片机在一块电路芯片上集成了()等主要计算机部件。
A.中央处理器(CPU)B.数据存储器(RAM)C.程序存储器(ROM)D.定时器/计数器E.输入/输出(I/O)接口电路。
单片机中空间和堆栈的意义
关于单片机的知识,体积庞大且结构复杂。
初学者很容易陷入困境,最终
失去对单片机的兴趣。
因此在学习单片机时一定要对基础知识进行特别的巩固。
在本文中,小编将为大家介绍单片机地址空间以及堆栈的相关知识,下面大家
就随小编来一起看一看吧。
Data:可寻址片内ram0x00-0x7f
Bdata:可位寻址片内ram
Idata:可寻址片内ram,允许访问全部内部ram0x00-0xff
Padata:分页寻址访问片外ram
Xdata:可寻址片外ram0x0000-0xffff
code--程序存储区单片机存储器分ROM跟RAM之分,RAM存放中间结果,数据和经常变换的代码,ROM存放code。
51单片机采用的是哈弗结构,即数
据跟代码拥有单独的地址空间。
存储器可以分为程序存储器(eerom,flash之类),内部数据存储器(ram),SFR,位地址空间和外部数据存储器。
内部数据存储器
在物理上分为内部SRAM和特殊功能寄存器,而内部分为低(0x00-0x7f)和
(0x80-0xff),高128字节地址重复,需要不同的访问方式。
SFR用直接寻址方式,SRAM需要间接。
这里SFR是寄存器,硬件上是中央处理器的内部组成部分,访问速度很快。
在低128B的SRAM,0x00-0x1f是4个通用工作寄存器,
每组有R0-R7。
使用哪一组,可以通过PSW中的RS1,RS0来配置。
位寻址是在0x20-0x2f。
程序内存可以分为几个区,栈区(stack)、堆区(Heap)、全局区(static)、文字常亮区、程序代码区。
程序编译之后,全局变量,静态变量已经分配好内存空间,在函数运行时,程序需要为局部变量分配栈空间,当中断来时,也需要将函数。