课后习题

单片机原理与应用

习 题

1

第1章 习题

1、微型计算机为什么要采用二进制数?什么情况下要用到十六进制数? 答:微型计算机中采用二进制的记数方式主要是因为:(1)微型计算机是由逻辑电路组成的,二进制数只有0和1两个数码,正好与逻辑量的“真”和“假”相对应。(2)与十进制数相比,二进制数的运算规则要简单得多,可以使运算器的结构得到简化,有利于提高运算速度,传输和处理时不易出错。因而。 二进制适用于计算机识别、运算和处理,但不便于操作者阅读和书写。如果用十六进制就方便得多,一个4位的二进制数只要1位十六进制就可以表达,所以在书写和编程时经常用到十六进制, 在计算机内部会将输入的十六进制数自动转换成二进制。

2、将下列二进制数转化为十进制数。

(1)1101B (2)10101B (3)1010110B (4)1000111001B 答:(1)1101B=13 (2)10101B=21 (3) 1010110B =86 (4)1000111001B=569

3、将下列二进制数转化为十六进制数。 (1)10100B (2)101101B (3)10100110B (4)100111001B 答:(1)10100B=14H (2)101101B=2DH (3)10100110B=A6H (4)100111001B=139H

4、将下列各数转换为二进制数。 (1)56 (2)8FH (3)125 (4)1A3H 答:(1)56=111000B (2)8FH=10001111B

(3)125=1111101B (4)1A3H=110100011B

5、什么是原码、反码和补码?

答:微型计算机中的带符号数有三种表示法,即:原码、反码和补码。机器码形式的二进制带符号数就是原码,其最高位为符号位,其余位为数值位。符号位为0表示正数;符号位为1表示负数。

正数的反码和原码相同;负数的反码是:符号位仍为1,数值位是其原码的数值位按位取反。 正数的补码和原码相同;负数的补码是反码加1。

6、求下列十进制数的机器码、原码、反码和补码。 (1)X1=-89 (2)X2=105 答:(1)[X]机器码=-1011001 [X]原码=11011001

[X]反码=10100110 [X]补码=10100111 (2)[X]机器码=1101001 [X]原码=1101001

[X]反码=1101001 [X]补码=1101001

7、什么是单片机?单片机与一般微型计算机相比,具有哪些特点? 答:单片机是在一块集成电路上把中央处理器(CPU)、存储器(ROM、RAM)和多种输入/输出接口(定时器/计数器、并行I/O接口、串行口等)集成在一起而构成的微型计算机。

2

它与一般微型计算机相比,具有如下特点:(1) 单片机的程序存储器和数据存储器是分工的,前者为ROM,后者为RAM; (2) 采用面向控制的指令系统,控制功能强;(3)多样化的I/O接口,多功能的I/O引脚;(4) 产品系列齐全,功能扩展性强。

8、单片机主要应用在哪些领域? 单片机应用系统有哪些部分组成?

答:单片机的应用范围很广泛,如:智能化家用电器、仪器仪表、工业控制、计算机外部设备、智能机器人、电信及导航等方面。 单片机应用系统由硬件和软件两大部分组成。其中硬件包括:单片机、存储器、I/O接口及外围设备(如:键盘、显示器、打印机等人机交互设备);软件包括开发软件和应用软件。

9、简单介绍Keil C51及其主要主要功能。

答:Keil C51是一种针对MCS-51系列单片机的软件开发工具。它通过一个集成开发环境Keil μVision2将C编译器、宏汇编器、连接器、库管理器和仿真调试器等组合在一起。它集编辑、编译、仿真于一体,支持汇编语及C51高级语言的编程设计。 Keil C51能够完成工程建立、管理、编译连接、生成目标代码、软件仿真、硬件仿真等单片机应用项目的开发流程。

3

第2章 习题

1、80C51单片机内包含哪些主要逻辑功能部件? 答:80C51系列单片机在片内集成了以下主要逻辑功能部件:(l) 8位的CPU(中央处理器); (2) 128B片内RAM;(3) 21个特殊功能寄存器;(4) 4KB程序存储器;(5) 4个8位的并行I/O口;(6) 1个全双工串行接口;(7) 2个16位的定时器/计数器;(8) 1个片内时钟电路。

2、89S51的/EA端有何用途?

答:/EA端接低电平时,CPU只访问外部ROM,并执行片外程序存储器中的指令;/EA端接高电平时,CPU先访问并执行片内flash ROM中的指令,若PC值超过0FFFH,将自动转到片外ROM。 3、读端口锁存器和“读引脚”有何不同?各使用哪种指令?

答:读锁存器相当于从存储器中取数据,如从P0口的锁存器取数,用ANL P0,A指令;而读引脚是从外部取数据,如MOV A,P1就是读引脚,目的是把端口P1输入的数据送给A累加器。

4、什么叫堆栈?堆栈有什么功能?

答:堆栈是在片内RAM中指定的一个特殊区域。堆栈中数据的存取是按照\先进后出\原则进行的。 堆栈的主要功能是:暂时存放数据和地址,通常用来保护程序运行的断点和现场。

5、AT89S51单片机有哪些特殊功能寄存器?各在单片机的哪些功能部件中?

答:89S51单片机内部有21个特殊功能寄存器。物理上分散在片内各功能部件中,在逻辑上把它们组织在内部数据存储器地址空间80H~FFH中,以便能使用统一的直接寻址方式来访问。特殊功能寄存器分布在以下各个功能部件中:(1) CPU中有:ACC、B、PSW、SP、DPTR(由DPL和DPH两个8位寄存器组成);(2)中断系统中:IP、IE;(3)定时器/计数器中:TMOD、TCOM、TL0、TH0、TL1、TH1;(4)并行I/O口中:P0、P1、P2、P3;(5)串行口中:SCON、SBUF、PCON。

6、AT89S51的存储器分哪几个空间?如何区别不同空间的寻址方式?

答:在物理上89S51有4个存储空间,即片内程序存储器、片外程序存储器、片内数据存储器和片外数据存储器。

逻辑上,片内ROM和片外ROM统一编址,使用MOVC指令访问。256B的内部数据存储器和64KB的外部数据存储器是独立编址的,访问片内RAM用MOV指令;访问片外RAM用MOVX指令。

7、简述AT89S51片内RAM的空间分配。片内RAM中包含哪些可位寻址单元? 答:片内RAM有256B空间的存储单元,地址为00H~FFH。低128B是真正的RAM区,其中20H~2FH字节地址单元是位寻址区,对应的位地址是00H~7FH;高128B是SFR特殊功能寄存器区。

8、位地址20H和字节地址20H如何区别?位地址20H在内存中的什么位置?

答:位地址只表示某个存储单元中某位的地址,而字节地址表示一个8位二进制数所在的地址。区别位地址20H和字节地址20H可以根据访问它们的指令码来区别。如:MOV C,20H和MOV A,20H的指令代码分别为A2H、20H和E5H、20H。前一条指令是位操作指令,其中的20H是位地址;后一条指令是字节操作指令,其中的20H是字节地址。

4

联系客服:779662525#qq.com(#替换为@)