单片微机原理及应用徐春辉电子工业出版社习题答案.doc

上传人:h**** 文档编号:153398 上传时间:2018-07-11 格式:DOC 页数:36 大小:120KB
下载 相关 举报
单片微机原理及应用徐春辉电子工业出版社习题答案.doc_第1页
第1页 / 共36页
单片微机原理及应用徐春辉电子工业出版社习题答案.doc_第2页
第2页 / 共36页
单片微机原理及应用徐春辉电子工业出版社习题答案.doc_第3页
第3页 / 共36页
单片微机原理及应用徐春辉电子工业出版社习题答案.doc_第4页
第4页 / 共36页
单片微机原理及应用徐春辉电子工业出版社习题答案.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、59 单片微机原理及应用徐春辉电子工业出版社习题答案第 1 章 1简述计算机的基本组成结构。 答:计算机的基本组成结构由输入设备、输出设备、运算器、控制器和存储器等五大部件构成。 2简述单片微型计算机系统应用和开发的特点。 答:单片微型计算机系统应用和开发的特点是需要进行软硬两方面的设计和调试。 第 2 章 1为什么微型计算机要采用二进制?十六进制代码能为微型计算机直接执行吗?为什么要使用十六进制数? 答:在所有数制中,只有二进制数最容易用电路来表达,据此构建的计算机结构也是最简单的。十六进制代码不能为计算机直 接执行,只有二进制代码才能为计算机所识别和执行。二进制代码过于冗长,而其对应的十六

2、进制数则更为简洁,而且此二种数制的相互转换非常方便,这就是常常使用十六进制数来表示其对应的二进制数的原因。 2将下列各二进制数分别转换为十进制数和十六进制数。 ( 1) 11010B ( 2) 110100B ( 3) 10101011B( 4) 11111B 答:( 1) 11010B=26=1AH ( 2) 110100B=52=34H ( 3) 10101011B=171=ABH ( 4) 11111B=31=1FH 3将下列各数分别转换为二进制数 和十六进制数。 ( 1) 129D ( 2) 253D ( 3) 0.625 ( 4) 111.111 答:( 1) 129D 100000

3、01B=81H( 2) 253D 11111101B=FDH ( 3) 0.625=0.101B=0.AH ( 4) 111.111=01101111.000111B=6F.1CH 4把下列十六进制数转换成十进制数和二进制数。 ( 1) AAH ( 2) BBH ( 3) C.CH ( 4) DE.FCH ( 5) ABC.DH ( 6) 128. 08H 答:( 1) AAH=170=10101010B ( 2) BBH=187=10111011B ( 3) C.CH=12.75=1100.1100H ( 4) DE.FCH=222.984375=11011110.1111110B ( 5)

4、 ABC.DH=2748.8125=101010111100.1101B ( 6) 128. 08H=296.03125=100101000.00001 5什么叫原码、反码及补码? 答:在机器数中,最高位为符号位,正数的符号位用 0 表示,负数的符号位用 1 表示,其余为该数的绝对值,这种表示法称为原码。正数的反码和原码相同;负数的反码为其原码除符号位外其他各位按位 取反得所值。正数的补码和原码相同;负数的补码为反码加 1。 6已知原码如下,写出其反码及补码(其最高位为符号位)。 ( 1) X原 = 01011001 ( 2) X原 = 11011011 ( 3) X原 = 11111100

5、答:( 1) X反 = X补 = X原 = 01011001 ( 2) X反 = 10100100X补 =10100101 ( 3) X反 = 10000011X补 =10000100 7当微机把下列数视为无符号数时,它们相应的十进制数为多少?若把它们视为补码,最高位为符号位,那么它 们相应的十进制数又是多少? ( 1) 10001110 ( 2) 10110000 ( 3) 00010001( 4) 01110101 答:视为无符号数时: ( 1) 10001110B=142 ( 2) 10110000B=176 ( 3) 00010001B=17 ( 4) 01110101B=117 若把

6、它们视为补码,最高位为符号位,那么它们相应的十进制数是: ( 1) 10001110B= -114 ( 2) 10110000B= -80 ( 3) 00010001B= 17 ( 4) 01110101B= 117 8先将下列十六进制数转换为 二进制数,然后分别完成逻辑乘、逻辑加和逻辑异或操作。 ( 1) 33H 和 BBH ( 2) ABH 和 FFH ( 3) 78H 和 0FH 答:( 1) X=33H=00110011B, Y=BBH=10111011B; X Y=00110011B; X Y=10111011B; X Y=10001000B ( 2) X=ABH=10101011B

7、, Y=FFH=11111111B; X Y=10101011B; X Y=11111111B; X Y=01010100B ( 3) X=78H=01111000B; Y=0FH=00001111B; X Y=00001000B; X Y=01111111B; X Y=01110111B; 9已知 x 和 y,试分别计算 x + y补和 x- y补,并指出是否产生溢出(设补码均用 8 位表示)。 ( 1) x = +1001110, y =+0010110 ( 2) x = +0101101, y = -1100100 ( 3) x = -0101110, y =+0111011 ( 4)

8、x = -1000101, y = -0110011 答:( 1) x + y补 =01100100B,无溢出; x- y补 =00111000B,无溢出; ( 2) x + y补 =11001001B,无溢出; x- y补 =10010001B,溢出; ( 3) x + y补 =00001101B,无溢出; x- y补 =10010111B,无溢出; ( 2) x + y补 =10001000B,无溢出; x- y补 =11101110B,无溢出; 10写出下列各数的 BCD码。 ( 1) 45 ( 2) 98 ( 3) 124 ( 4) 1998 答:( 1) 45=(0100 0101)

9、BCD ( 2) 98=(1001 1000)BCD ( 3) 124=(0001 0010 0100)BCD ( 4) 1998=(00011001 10011000)BCD 11用十六进制形式写出下列字符的 ASCII 码。 ( 1) CD ( 2) COMPUTER ( 3) HELLO ( 4) F365 答:( 1) 43H、 44H ( 2) 43H、 4FH、 4DH、 50H、 55H、 54H、 45H、 52H ( 3) 48H、 45H、 4CH、 4CH、 4FH ( 4) 46H、 33H、 36H、 35H 12 ALU 是什么部件?它能完成什么运算功能? 答: A

10、LU 称为算术逻辑部件,它能完成算术运算和逻辑运算。 13累加器有何用处 ? 答:累加器通常用于提供 ALU 的一个运算数据或暂存 ALU 的运算结果,此外还能使存储其中的数据左移或右移。 14控制字是什么意思?试举个例子说明之。 答:控制字是一个二进制数,其各位代表相应控制信号的逻辑状态。例如: CON = LAEALBEBLCECLDED=10010000 表示要将寄存器 B 的内容传送入寄存器 A 中去。 15 ROM 和 RAM 各有何特点和用处? 答: ROM 为只能读出的存储器,可用于存放固定的程序和数据。 RAM 为可在线写入和读出的存储器,可用于随时写入或读出数据,也可用于写入

11、随时有可能改 变的用户程序。 16为什么要建立 “地址 ”这个概念? 答:因为存储器的存储单元很多,为区分不同的存储单元必须给每个存储单元编上地址。 17除地线公用外, 5 根地址线和 11 根地址线各可选多少个地址? 5 答: 2=32 个地址 11 2=2048 个地址 18译码器有何用处? 答:译码器用于产生和输入代码相对应的控制信号。如果是存储器地址译码器则其能根据输入的地址信号产生存储器相应单元的选通信号。 19存储地址寄存器( MAR)和存储数据寄存器( MDR)各有何用处? 答: MAR 用以接受来自 PC 的地址号。 MDR 用以 接受来自总线的数据。 此二者均为存储器的主要辅

12、件。 20微型计算机的基本结构是怎样的?包括哪些主要部件? 答:微型计算机包括微处理器( CPU)、随机存取存储器( RAM)、只读存储器( ROM)、 I/O 接口电路及外设组成。前面四大部分通过系统总线连接在一起。 21指令、指令系统和程序三者间有什么区别和联系? 答:指令是指挥计算机工作的指示和命令。而指令系统则是一台计算机所拥有的所有指令的集合。程序则是为了实现特点功能而将取自指令系统的指令按照一定顺序排列起来的组织体。 22控制部件包括哪些主要环节?各有何 用处? 答: ( 1)指令部件 作用是获取来自程序存储器的二进制指令操作码并将其译成控制动作信号送入控制矩阵。 ( 2)时序部件

13、 作用是用于产生微操作控制部件所需的定时脉冲信号。 ( 3)控制矩阵 控制矩阵可以为 ID 输出信号配上节拍电位和节拍脉冲,也可将外部进来的控制信号组合,共同形成相应的微操作控制信号序列,控制相关部件按照严格的先后顺序执行指令所要求的各种微操作,最终完成规定的操作。 23环形计数器有何用处?什么叫环形字? 答:环形计数器用于产生机器节拍。若将环形计数器的输出视为一个字,则这个字就称为 环形字 24试说明下列各部件的作用: ( 1)程序计数器 PC ( 2)指令寄存器 IR ( 3)指令译码器 ID 答:( 1)程序计数器 PC 是在控制器中设置的一个专用寄存器,用来存放当前要执行的指令在存储器

14、中的位置信息(即存储器地址),以便根据此地址去读取指令。 ( 2)指令寄存器 IR 是用来暂时存放从存储器中取出的当前要执行指令的操作码的这么一个寄存器。 ( 3)指令译码器 ID 是对指令操作码进行分析,在其输出端产生各种控制电平,以形成相应的微操作,用以实现指令执行过程中所需要的功能控制的这么一个译码器。 25什么叫例行 程序?什么叫机器周期、取指周期和执行周期?本章所论模型式计算机的机器周期包括几个时钟周期(机器节拍)?机器周期是否一定是固定不变的? 答:例行程序是由控制部件内部的结构确定了的各条指令的执行步骤,机器周期是指一条指令从取指到执行完所需的时钟周期数。取指周期为从 PC 开始

15、输出使程序存储器中的指令进入 IR 到 PC+1 为止的时钟周期数。执行周期为从指令进入控制器起至执行完的时钟周期数。本章所论模型计算机的机器周期包括 6 个时钟周期,在这里机器周期是固定的,但是对于不同的计算机而言,机器周期就不一定是固定的了。 26何 谓总线?它有哪几类?它们的主要功能是什么? 答:将多个装置或部件连接起来并传送信息的公共通道称为总线。 总线通常有如下三种类型: 数据总线( DB):专门传送数据信息。 地址总线( AB):专门传送地址信息。 控制总线( CB):专门传送控制信息。 27微型计算机系统的硬件和软件包括哪些部分?各部分的作用是什么? 答:硬件系统主要包括主机箱、

16、显示器、键盘和打印机等。主机箱内装有主机板、光盘和硬盘驱动器、电源等, CPU、内存储器和 I/O 接口电路等装在主机板上,一般主机板上还留有扩展插槽,以备用户扩展其 他功能。硬件系统是运行各种软件的支持平台。 计算机的软件系统包括系统软件和应用软件。系统软件是为了最大限度地发挥计算机的功能,便于使用、管理和维护计算机硬件的软件,它也是应用软件的支撑软件,可以为应用软件提供很好的运行环境。应用软件是指用户为了解决某一领域的实际问题而编制的计算机应用程序,具有明显的针对性和专用性。 28什么叫单片机?和一般型计算机相比,单片机有何特点? 答:单片是在一块芯片上集成了中央处理器( CPU)、存储器

17、( RAM、 ROM)、定时器 /计数器、中断控制、各种输入 /输出( I/O)接口(如并 行 I/O 口、串行 I/O 口和 A/D 转换器)等为一体的器件。 一般微型计算机的基本结构由 CPU(运算器、控制器)、存储器、输入设备和输出设备五大部分组成,各部分通过外部总线连接而成为一体。单片机的结构是在一块芯片上集成了中央处理器( CPU)、存储器、定时器 /计数器、中断控制、各种输入 /输出接口(如并行 I/O 口、串行 I/O 口和 A/D 转换器)等,它们通过单片机内部总线连接而成为一体。 29除了单片机这一名称之外,单片机还可称为( )和( )。 答:微控制器和嵌入式控制器。 30

18、MCS-51 系列单片机的基本型芯片 分别为哪几种?它们的差别是什么? 答:基本芯片为 8031、 8051、 8751。 8031 内部包括 1个 8位 CPU、 128BRAM, 21 个特殊功能寄存器( SFR)、 4 个 8 位并行 I/O 口、 1 个全双工串行口, 2 个 16位定时器 /计数器,但片内无程序存储器,需外扩 EPROM 芯片。 8051 是在 8031 的基础上,片内又集成有 4KBROM,作为程序存储器,是 1 个程序不超过 4KB 的小系统。 8751 是在 8031 的基础上,增加了 4KB的 EPROM,它构成了 1 个程序小于 4KB 的小系统。用户可以将

19、程序固化在 EPROM中,可以反复修 改程序。 31 MCS-51 系列单片机与 51 系列单片机的异同点是什么? 答: 51 系列单片机与 MCS-51 系列单片机的内核结构和指令系统完全兼容,前者相比后者制造工艺得到改进,并且片内资源有所增加。 32说明单片机主要应用在哪些领域。 答:单片机主要应用领域为:工业自动化;智能仪器仪表;消费类电子产品;通信方面;武器装备;终端及外部设备控制;多机分布式系统。 第 3 章 1 AT89S51 单片机的片内都集成了哪些功能部件? 答: AT89S51 单片机的片内都集成了如下功能部件:( 1) 1 个微处理器( CPU);( 2) 128 个数据存

20、储器( 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说明 AT89S51 单片机的引脚接高电平或低电平的区别。 答:当脚为高电平时,单片机读片内程序存储器( 4K 字节 Flash)中的内容,但在 PC 值超过 0FFFH(即超出 4K 字节地址范围 )时,将自动

21、转向读外部程序存储器内的程序;当脚为低电平时,单片机只对外部程序存储器的地址为 0000H FFFFH 中的内容进行读操作,单片机不理会片内的 4K 字节的 Flash 程序存储器。 3单片机的存储器在物理结构上和逻辑上有何区别?答:单片机存储器的逻辑空间是指由单片机 CPU 所确定的可以寻址的空间。而物理空间是指有具体物理器件相对应可以实际存储数据的那部分逻辑空间。 4 AT89S51 单片机中执行程序的地址放在哪里?是几位二进制数?最大寻址范围是多少?程序状态字 PSW 各位的定义是什么? 答: PC。 16 位。 64KB。 程序状态字 PSW 各位的定义是: ( 1) Cy( PSW.

22、7)进位标志位: ( 2) Ac( PSW.6)辅助进位标志位: ( 3) F0( PSW.5)用户设定标志位: ( 4) RS1、 RS0( PSW.4、 PSW.3) 4组工作寄存器区选择控制位: ( 5) OV( PSW.2)溢出标志位: ( 6) PSW.1 位:保留位,未做定义,不可使用。 ( 7) P( PSW.0)奇偶标志位: 5什么叫堆栈? AT89S51 中堆栈的最大容量是多少? 答:所谓堆栈,是指一个连续的数据存储区域,其操作原则为 “先进后出 ”或 “后进先出 ”。 AT89S51 中堆栈的最大容量理论上可以达到 128B。 6开机复位后, CPU 使用哪一组工作寄存器?

23、它们的地址是什么?如何改变当前工作寄存器组? 答:第 0 组。地址是 00H07H。通过修改 PSW 中 RS1、 RS0 两位的值来改变当前工作寄存器组。 7 64KB 程序存储器空间有 5 个单元地址对应 AT89S51 单片机 5 个中断源的中断入口地址,请写出这些单元的入口地址及对应的中断源。答: 64K 程序存储器空间中 5 个特殊单元所分别对应的 5 个中断源的中断服务程序入口地址如下表所示: 8在程序设计时,为什么有时要对复位后的堆栈指针 SP 重新赋值?如果在操作中需要使用三组工作寄存器, SP 的初值应该至少多大? 答:系统复位后, SP 初始化为 07H,使得堆栈事实上由

24、08H 单元开始。考虑到 08H1FH 单元分属于工作寄存器区的 13 组,如果程序设计中要用到这些寄存器组,则必须在复位后对堆栈指针 SP 重新赋值。最好把 SP 值改置为 1FH 或更大的值如 60H,SP 的初始值越小,堆栈深度就越深,堆栈指针的值可以由软件改变,因此堆栈在内部 RAM 中的位置比较灵活。 如果在操作中需要使用三组工作寄存器, SP 的初值至少应该为 17H。 9 AT89S51 的寻址范围 是多少?最多可以配置多大容量的外部 ROM 和多大容量的外部 RAM? 答: 64KB、 64KB、 64KB。 10 AT89S51 单片机运行出错或程序进入死循环时如何摆脱困境?

25、 答:通过硬件复位。 11 AT89S51 单片机扩展系统中片外程序存储器和片外数据存储器,使用相同的地址编码,是否会在数据总线上出现争总线现象?为什么? 答:不会。因为这两种存储器使用的选通信号不同。片外程序存储器使用 出使能控制信号,而片外数据存储器分别使用和作为读写控制信号。作为输 12 AT89S51 的 P0口和 P2口各有何作用? P0口为什 么要外接锁存器? 答: P0口通常作为分时复用的地址 /数据总线使用,作为地址总线使用时用于提供 16 位地址总线的低 8 位地址信号。 P2口通常用于提供 16 位地址总线的高 8 位地址信号。在前述功能不使用的情况下,这两端口也可以作为一

26、般的 I/O 使用。 P0口外接锁存器的目的是使 CPU 发出的地址信号在 P0口作为数据通道时依然保持有效。 13 AT89S51 的 ALE 引脚有何作用? AT89S51不接外部 RAM 时, ALE 信号有何特点? 答: AT89S51的 ALE 引脚用于对低 8 位地址信号的锁存控制。 AT89S51 不接外部 RAM 时, ALE 信号是频率为时钟频率六分之一的固定周期信号。 14举例说明单片机工业控制系统中掉电保护的意义和方法。 答:单片机工业控制系统在运行程序的过程中,如果发生掉电故障将会丢失 RAM 和寄存器中的数据,其后果有时是很严重的。为此,需要掉电保护功能,进行掉电保护

27、处理。 掉电保护方式是通过对 SFR 中的 PCON(地址 87H)相应位置 1 而启动的。当 CPU 执行一条置 PCON.1 位( PD)为 1 的指令后,系统进入掉电工作方式。在这种工作方式下,内部振荡器停止工作。由于没有振荡时钟,因此,所有的功能部件都停止工作。但内部 RAM 区和特殊功能寄存器的内容被保留,而端口的输出状态值都保存在对应的 SFR 中。掉电模式的退出有两种方法:硬件复位和外部中断。硬件复位时要重新初始化 SFR,但不改变片内 RAM 的内容。当 VCC 恢复到正常工作水平时,只要硬件复位信号维持 10ms,便可使单片机退出掉电运行模式。 15内部 RAM 中,位地址为

28、 40H、 88H 的位,该位所在字节的字节地址分别为()和()。 答: 28H; 88H。 16片内字节地址为 2AH 单元最低位的位地址是();片内字节地址为 88H 单元的最低位的位地址为()。 答: 50H; 88H。 17 若 A 中的内容为 63H,那么 P 标志位的值为()。 答: P 标志位的值为 0。 18在 AT89S51 单片机中,如果采用 6 MHz晶振,那么一个机器周期为()。 答: 2s 19判断下列说法是否正确。 A使用 AT89S51 且引脚 = 1 时,仍可外扩 64 KB 的程序存储器。() B区分片外程序存储器和片外数据存储器的最可靠的方法是,看其位于地址

29、范围的低端还是高端。() C在 AT89S51 中,为使准双向的 I/O 口工作在输入方式,必须事先预置为 1。() D PC 可以视为程序存储器的地址指针。() 答:( A)错;( B)错;( C)对;( D)对 20 AT89S51 单片机复位后, R4 所对应的存储单元的地址为(),因上电时 PSW = ()。这时当前的工作寄存器区是()组工作寄存器区。 答: 04H、 00H、第 0 21判断以下有关 PC 和 DPTR的结论是否正确。 A指令可以访问寄存器 DPTR,而 PC 不能用指令访问。() B它们都是 16 位寄存器。() C在单片机运行时,它们都具有自动加 1 的功能。()

30、 D DPTR 可以分为 2 个 8位的寄存器使用,但 PC 不能。() 答: (A) 对; (B) 对; (C) 错; (D) 对。 22内部 RAM 中,可作为工作寄存器区的单元地址为() H() H。 答:字节地址 00H-1FH 的单元可作为工作寄存器区。 23判断下列说法是否正确。 A AT89S51 中特殊功能寄存器( SFR)就是片内 RAM中的一部分。() B片内 RAM 的位寻址区,只能供位寻址使用,而不能进行字节寻址。() C AT89S51 共有 21 个特殊功能寄存器,它们的位都是可用软件设置的,因此是可以进行位寻址的。() D SP 称为堆栈指针,堆栈是单片机内部的一

31、个特殊区域,与 RAM 无关。() 答: (A) 错; (B) 错; (C) 错; (D) 错。 24在程序运行中, PC 的值是()。 A当前正在执行指令的前一条指令的地址 B当前正在执行指令的地址 C当前正在执行指令的下一条指令的首地址 D控制器中指令寄存器的地址 答: (C)。 26 AT89S51 单片机程序存储器的寻址范围是由程序计数器 PC 的位数所决定的,因为 AT89S51 的 PC是 16 位的,因此其寻址的范围为() KB。 答: 64 27 AT89S51的 4 个并行双向口 P0 P3 的驱动能力各为多少?要想获得较大的输出驱动能力,是采用低电平输出还是采用高电平输出?

32、 答: P0口每位可驱动 8个 LSTTL 输入,而 P1、 P2、 P3 口的每一位的驱动能力,只有 P0口的一半。当 P0口的某位为高电平时,可提供 400?A 的电流;当 P0口的某位为低电平( 0.45V) 时,可提供 3.2mA 的灌电流,如低电平允许提高,灌电流可相应加大。所以,任何一个口要想获得较大的驱动能力,只能用低电平输出。 28当 AT89S51 单片机运行出错或程序陷入死循环时,如何摆脱困境? 答:通过硬件复位。 练习与思考题 4 1按长度分, 51 系列单片机的指令有字节的、字节的和 3 字节的。 2按指令的执行时间分, 51 和机器周期的指令。 3 51 系列单片机汇

33、编语言指令格式中,唯一不可缺少的部分是( B )。 A标号 B操作码 C操作数 D注释 4简述 8051 的寻址方式和每种寻址方式所涉及的寻址空间。 答: 5 51 系列单片机的寻址方式中,位寻址的寻址空间是( D )。 A工作寄存器 R0 R7 B专用寄存器 SFR C程序存储器 ROM D片内 RAM 的 20H 2FH 字节中的所有位和地址可被 8 整除的 SFR的有效位 6分析下面各指令源操作数的寻址方式。 MOV A, 32H ;直接寻址 MOV R7, A ;寄存器寻址 MOV R0, #0FEH ;立即寻址 MOV A, R1 ;寄存器间接寻址 MOV DPTR, #1E00H

34、;立即寻址 MOVC A, A+DPTR ;变址寻址 MOV C, 20H ;位寻址 JC 10H ;相对寻址 7访问特殊功能寄存器和外部数据存储器,分别可以采用哪些寻址方式?答:访问特殊功能寄存器只能用直接寻址;访问外部数据存储器只能用寄存器间接寻址。 8在寄存器寻址方式中,指令中指定寄存器的内容就是操作数。 9在寻址方式中,只能使用 8 位二进制数作为直接地址。 10在寄存器间接寻址方式中,其 “间接 ”体现在指令中寄 存器的内容不是 操作数,而是操作数的地址。 11在变址寻址方式中,以作变址寄存器,以或作基址寄存器。 12三种传送指令 MOV、 MOVC 和 MOVX,使用时有什么区别?

35、 答: MOV 指令用来实现单片机内部寄存器、存储单元、特殊功能寄存器之间的数据传送。 MOVC 指令用来读程序存储器中的数据表。 MOVX 指令用来实现累加器 A 和外部数据存储器之间的数据传送。 13假定 DPTR 的内容为 8100H,累加器的内容为 40H,执行指令 “MOVC A, A+DPTR”后,程序存储器单元的内容送累加器 A 中。 14单片 机中 PUSH 和 POP 指令常用来( C )。 A保护断点 B保护现场 C保护现场,恢复现场 D保护断点,恢复断点 15假定( A) =85H,( R0) =20H,( 20H) =AFH。执行指令: ADD A, R0 后,累加器

36、A 的内容为 34H , CY 的内容为 1 , AC 的内容为 1 , OV 的内容为 1 。 16假定 (A) = 56H, (R5) = 67H。执行指令 ADD A, R6 DA A 后,累加器 A 的内容为 23H , Cy 的内容为 1 。 17假定 (A) = 50H, (B) = 0A0H, LCALLSUBR; ADDA, #10H; MOVB, A; SJMP$; SUBR:MOVDPTR, #100AH; PUSHDPL; PUSHDPH; RET;答: (SP)=42H、(A)=30H, (B)=3; LCALL SUBR ADD A, #10H MOV B, A SJ

37、MP $ SUBR:MOV DPTR, #100AH PUSH DPL PUSH DPH RET 答: (SP)=42H、 (A)=30H, (B)=30H 练习与思考题 5 1. 用于程序设计的语言分为哪几种?它们各有什么特点? 答: 51 系列单片机的编程语言可以分为汇编语言和高级语 言(如 C 语言)两种,各自的特点如下: 2. 说明伪指令的作用。 “伪 ”的含义是什么?常用的伪指令有哪些?其功能是什么? 答:伪指令是在 “机器汇编 ”过程中,用来对汇编过程进行某种控制或者对符号和标号进行赋值。 “伪 ”的含义是指这些指令不属于指令系统中的指令,汇编时也不产生机器代码。常用伪指令有 OR

38、G、 EQU、 DATA、 DB、 DW、 DS、 BIT 、 END。 功能: ORG -指出后面程序块或数据块在程序存储器中存放的起始地址。 EQU -赋值命令 DATA-对数据地址或代码地址赋予规定的字符名称 DB -定 义字节数据 DW -定义字数据 DS-从指定的地址单元开始,保留若干单元备用。 BIT -定义位地址符号命令 END -汇编结束命令 3. 设常量和数据标号的定义为: ORG 2000H DAT1: DB 1, 2, 3, 4, 5 DAT2: DB ABCD DAT3: DW 1200H, -2 TAB: DW DAT1, DAT3 ( 1)画出上述数据或地址的存储形

39、式。 ( 2)写出各标号的地址。答:( 1) 地址 ( 2) DAT1=2000H; DAT3=2009H; TAB =200DHDAT2=2005H 5. 试编写程序,找出片内 RAM 30H 5FH 单元中无符号数的最大数,并将结果存入 60H 单元。答: ORG 0000H MOV R0, #30H MOV R7, #2FH MOV A, R0 AGAIN: INC R0 MOV B, A CLR C SUBB A, R0 JNC L1 MOV A, R0 AJMP L2L1: MOV A, B L2: DJNZ R7, AGAIN MOV 60H, A SJMP $ END 7编写程序

40、,将片外数据存储区中 3000H 30FFH 单元全部清零。 答: ORG 0000H START: MOV A, #0 MOV R7, #0 MOV DPTR, #3000H LOOP: MOVX DPTR, A INC DPTR DJNZ R7, LOOP SJMP $ END 8. 将外部 RAM 8000H 开始的 20 个字节数据传送到外部 RAM 8100H 开始的地址单元中去。答: DATA1 EQU 8000H DATA2 EQU 00H ORG 0000H START: MOV DPTR,#DATA1 MOV R0, #DATA2 MOV R7, #20 LOOP: MOVX

41、 A, DPTR MOV P2, #81H MOVX R0, A INC R0 INC DPTR DJNZ R7, LOOP SJMP $ END DAT EQU 37H MOV C, 20H ANL C, 2FH CPL C ORL C, 2AH MOV P1.0, C SJMP $ END 13.简述利用 Keil Vision调试汇编语言程序的主要步骤。 答:利用 Keil Vision调试软件的主要步骤包括:建立工程( project) 编写汇编语言源程序并保存 在工程中添加源文件 设置工程 编译并连接,创建目标文件 调试程序。 14.如何产生 .hex 文件? 答:编译并连接时,在

42、“Project Workspace”窗口中,右键 Target 1,选择 Options For TargetTarget1选项,弹出 “option for Target”对话窗,选 Output 选项卡,选中 Create HEX File。 15.在 Keil Vision环境中,如何查看寄存器和数据存储单元内容? 答:点击 “Regs”,可查看寄存器的内容。在 Keil 的菜单栏中,选择 ViewMemory Window 选 项,打开 Memory 对话窗,在 Address栏中输入地址 “D: 0030H”,查看片内 RAM 中 0030H 的内容。( X:外部数据存储器, C:

43、程序存储器) 练习与思考题 8 1什么叫中断?计算机采用中断有什么好处? 答:外部发生的某一件事件使 CPU 暂停正在执行的程序,转而执行 与该事件相对应的程序,执行完此程序后再返回到原来被暂停的地方, 继续执行原来的程序,这样一个过程就被称为中断。 中断的好处: ( 1)可以提高 CPU 的工作效率。 ( 2)可以提高实时数据的处理时效。 ( 3)实现实时控制。 2什么叫中断源? AT89S51 有哪些中断源?各有什么特点? 答:引起中断的原因称为中断源。 AT89S51 中断系统共有 5 个中断请求源: ( 1)外部中断请求 0,中断请求标志为 IE0。( 2)外部中断请求 1,中断请求标

44、志为 IE1。( 3)定时器 /计数器 T0溢出中断请求,中断请求标志为 TF0。( 4)定时器 /计数器 T1溢出中断请求,中断请求标志为 TF1。( 5)串行口中断请求,中断请求标志为 TI或 RI。特点: 2 个外部中断源, 3 个内部中断源。 3. 什么叫中断系统?中断系统的功能是什么? 答:实现中断处理功能的软硬件系统称为中断系统。 中 断系统的功能是: ( 1)对同时提出中断请求的多中断源进行优先级判断 ( 2)实现中断嵌套 ( 3)自动响应中断 ( 4)实现中断并返回 4中断嵌套及中断优先级的含义是什么? 答:当 CPU 正在处理一个中断源请求时(执行相应的中断服务程序),发生

45、了另外一个优先级比它更高的中断源请求, CPU 暂停对原来中断源的服务程序,转而去处理优先级更高的中断请求源,处理完以后,再回到原低级中断源服务程序,这样的过程称为中断嵌套。 一个 CPU 通常可以与多个中断源相连,由于中断产生的随机性,可能出 现两个或两个以上中断源同时 请求中断的情况,这就要求设计者必须根据轻重缓急给每个中断源赋予一个中断优先级。这样,当多个中断源同时向 CPU 请求中断时, CPU 就可以率先响应中断优先权高的中断请求,而把中断优先权低的中断请求暂时搁置起来,等到处理完优先权高的中断请求后再来响应优先权低的中断。这就是中断优先级的含义。 5 AT89S51 的 6 个中断

46、标志位代号是什么?它们在什么情况下被置位和复位? 答:( 1)外部中断 0 中断请求标志为 IE0。( 2)外部中断 1 中断请求 标志位为 IE1。( 3)定时器 /计数器 T0溢出中断请求标志位为 TF0。( 4) 定时器 /计数器 T1溢出中断请求标志位为 TF1。( 5)串行口发送中断请求标志位为 TI。( 6)串行口接收中断请求标志位为 RI。 各标志位因有相应的中断请求而置位,前四个标志位因相应的中断请求被响应而复位,而后两个标志位则是在中断服务程序里通过软件复位。 6中断允许寄存器 IE 各位的定义是什么?请写出允许 T1定时器溢出中断的指令。 答: IE 中各位的定义如下: ( 1) EA:中断允许总控制位 EA = 0: CPU 屏蔽所有的中断请求( CPU 关中断)。 EA = 1: CPU 开放所有中断( CPU 开中断)。 ( 2) ES:串行口中断 允许位 ES = 0:禁止串行口中断。 ES = 1:允许串行口中断。 ( 3) ET1:定时器 /计数器 T1的溢出中断允许位 ET1 = 0:禁止 T1溢出中断。 ET1 = 1:允许 T1溢出中断。 ( 4) EX1:外部中断 1 中断允许位 EX1 = 0:禁止外部中断 1 中断。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育教学资料库 > 复习参考

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。