《单片机原理与c51基础》赵丽清(课后习题及答案全套)_第1页
《单片机原理与c51基础》赵丽清(课后习题及答案全套)_第2页
《单片机原理与c51基础》赵丽清(课后习题及答案全套)_第3页
《单片机原理与c51基础》赵丽清(课后习题及答案全套)_第4页
《单片机原理与c51基础》赵丽清(课后习题及答案全套)_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

思考题【11】补码是可以带符号位进行运算的吗补码的表达范围是【12】8位二进制数可以表达的无符号数的范围是多少12位二进制数可以表达的无符号数值的范围是16位二进制数可以表达的二进制数范围是数值范围从0000H7FFFH共需要几位二进制数才能表达【13】在家用电器中使用单片机应属于微计算机的()。A)辅助设计应用B)测量、控制应用C)数值计算应用D)数据处理应用【14】51单片机汇编语言编写程序的扩展名为C语言编写的程序扩展名为其编译后可以下载的机器码扩展名为【15】除了单片机这一名称之外,单片机还可称为()和()。【16】单片机与普通微型计算机的不同之处在于其将()、()和()三部分,通过内部()连接在一起,集成于一块芯片上。【17】MCS51系列单片机的基本型芯片分别为哪几种它们的差别是什么【18】51系列单片机与MCS51系列单片机是可以等同的概念吗【19】8051与8751的区别是()。A)内部数据存储单元数目不同B)内部数据存储器的类型不同C)内部程序存储器的类型不同D)内部寄存器的数目不同【110】区分8051、MCS51系列、8051系列、80C51系列以及51系列单片机名称【111】简述目前8位单片机市场三种市场占有率最高主流类型【112】51系列单片机是冯诺依曼结构还是哈佛结构通用计算机的CPU是冯诺依曼结构还是哈佛结构PIC和AVR单片机呢【113】单片机属于什么逻辑电平类型还有哪类逻辑芯片与它相同PC机的9针串口属于什么电平类型TTL、CMOS、RS232哪些电平类型是正逻辑,哪些是负逻辑【114】T89S51单片机的高低电平必须是准确的5V和0V,这句话对吗【115】51系列、PIC和AVR单片机的指令系统都属于复杂指令集这样表述是否正确【116】简述目前主流16位单片机类型及其出品公司【117】什么是“嵌入式系统”【118】简述嵌入式处理器家族组成DSP、ARM分别应用于什么领域【119】单片机的开发过程包括试简述什么是程序的编辑、编译、仿真调试、烧写【120】分别绘制与、或、非的国际标准、国内常用及欧美流行逻辑符号图【121】仿真技术包括哪两种类型仿真功能最强的是仿真芯片这句话对否【122】简述KEILC51及境KEILVISION3的区别和联系【123】单片机开发最常用的KEILVISION3是否具有烧写功能【124】单片机编程器的功能是单片机开发过程中部分芯片可以采用下载线代替编程器完成烧写工作这句话对吗,试举出具有该功能的两种芯片【125】简述PROTEL和PROTEUS软件在单片机开过程中的作用【126】串口调试助手在功能及应用场合字模提取软件在什么时候使用第一章思考题答案【11】解答是。补码的表达范围是128127。【12】解答(1)8位二进制数可以表达的无符号数的范围是00H0FFH;(2)12位二进制数可以表达的无符号数的范围是0000H0FFFH;(3)16位二进制数可以表达的无符号数的范围是0000HFFFFH;(4)数值范围从0000H7FFFH共需要15位二进制数表达。【13】解答B【14】解答ASM;C;HEX或BIN。【15】解答微控制器和嵌入式控制器。【16】解答CPU、ROM、RAM、总线。【17】解答(1)MCS51系列单片机的基本型产品是8031/8051/8751(对应的低功耗是80C31/80C51/87C51)。(2)8031内部还不能集成ROM,需要外部扩展;8051比8031内部集成了4KB的ROM但其ROM一次写入程序,不可反复修改擦写;8751其内部集成了4KB的EPROM程序可以被反复修改擦写。【18】解答不是。51系列包含了所有公司生产的以MCS51系列8051内核为基础的所有单片机。但MCS仅指INTEL公司出品的51单片机芯片。【19】解答B。【110】解答(1)8051是INTEL公司生产的MCS51系列中典型的一款芯片。(2)MCS51是INTEL公司生产的具有8051内核技术的一系列产品的总称。(3)8051系列泛指以INTEL公司51内核技术为基础的所有非低功耗芯片。(4)80C51是采用CMOS工艺,与8051系列相对应的低功耗芯片。(5)51系列是指包括所有公司生产的以INTEL8051内核为基础的单片机。【111】解答51系列、AVR、PIC。【112】解答51是哈佛结构;通用计算机是冯诺依曼结构;PIC、AVR是哈佛结构。【113】解答单片机属于TTL电平。74LS等数字芯片。PC机的9针串口属于RS232电平。TTL、CMOS属于正逻辑,RS232是负逻辑。【114】解答错误。51单片机属于TTL电平,实际电压小于04V即认为是低电平,电压高于24V即认为是高电平(实际单片机工作在输入和输出状态高低电平范围略有差别)。【115】解答错误。PIC和AVR单片机的指令系统都属于精简指令集。【116】解答是美国TI公司出品的MSP430系列。【117】解答广义上讲,凡是系统中嵌入了“嵌入式微处理器”,如单片机、DSP、嵌入式微处理器,都称为“嵌入式系统”。但还是有人仅把“嵌入”嵌入式微处理器的系统称为“嵌入式系统”。目前人们所说的“嵌入式系统”多指后者。【118】解答(1)嵌入式处理器家族分为如下四类单片机(嵌入式微控制器);嵌入式数字信号处理器(DIGITALSIGNALPROCESSOR,DSP);嵌入式微处理器(EMBEDDEDMICROPROCESSORUNIT,EMPU)以及片上系统(SYSTEMONCHIP,SOC)。(2)DSP主要应用在数字信号处理方面。ARM主要应用于需要实时多任务处理的系统,如多媒体手机、数字电视和机顶盒等高端产品中。【119】解答(1)单片机的开发过程包括硬件电路设计、程序编写(编辑)、编译、仿真调试、烧写(烧录、固化、下载)等过程。(2)程序的编辑是指利用C语言或汇编语言在个人电脑上完成程序的书写过程。编译是指将编程语言翻译成单片机能够识别的二(十六)进制代码的过程。烧写是指把编译好的二(十六)进制代码下载到单片机程序存储器ROM的过程。仿真调试包括软件仿真和硬件仿真,是指程序不可能一次编写成功,需要借助专业的软、硬件仿真调试工具,利用单步、断点、运行到光标处等功能实现对程序中各变量中间结果的监测。【120】解答见图111113。【121】解答(1)仿真技术包括软件仿真和硬件仿真。(2)错误。仿真芯片相较专业的仿真器功能弱很多。【122】解答(1)KEILC51是德国KEILSOFTWARE公司开发的用于51系列单片机的C51语言开发软件。具有WINDOWS风格的可视化操作界面(见图15);支持汇编语言、C51语言以及混合编程等多种方式的单片机设计;能够完成51系列单片机以及和51系列兼容的绝大部分类型单片机的程序设计和仿真。(2)KEILC51已被完全集成到一个功能强大的全新集成开发环境(IDE)VISION3中,该开发环境下集成了文件编辑处理、编译链接、项目(PROJECT)管理、窗口、工具引用和仿真软件模拟器等多种功能,所有这些功能均可在KEILVISION3提供的开发环境中极为简便地进行操作。【123】解答不具备。【124】解答(1)单片机编程器是将汇编语言或C语言编写的程序编译成HEX文件进行下载时所需要的硬件装备。(2)正确。有部分芯片确实具有下载功能。例如AT89S51/AT89S52。【125】解答PROTEL是学习单片机还需要掌握一种原理图绘图软件;PROTEUS软件能仿真单片机及外围器件,PROTEUS是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。【126】解答(1)串口调试助手可以实现的功能包括发送接受16进制数、字符串等,在单片机与PC机进行通信时会用到该类型小软件。(2)单片机系统如果采用LED点阵显示器或LCD液晶显示器时,显示的字符必须要经过字模提取软件将待显示的字符。思考题【21】80C51单片机由哪几部分组成,试说明ROM和RAM的功能分别是什么【22】在程序运行中,PC的值是。()A)当前正在执行指令的前一条指令的地址B)当前正在执行指令的地址C)当前正在执行指令的下一条指令的首地址D)控制器中指令寄存器的地址【23】判断下列说法是否正确。(1)PC可以存放一个16位二进制数,因此其寻址范围为0000H7FFFH。()(2)单片机系统复位时PC的内容为0000H,因此CPU从程序存储器0000H地址单元取指令,开始执行程序。()(3)PC可以看成是程序计时器()(4)PC可以看成是程序存储器的地址指针。()【24】试计算当振荡频率为12MHZ和6MHZ时,一个机器周期的长度试辨析振荡周期、状态周期、机器周期、指令周期之间的关系。【25】单片机的ROM必须具有掉电存储功能,这句话是否正确【26】单片机对RAM的根本要求是快,但掉电可丢失数据,这个表述正确吗【27】试说出80C51的两种时钟电路模式,如果是只有一个单片机工作常使用的是哪一种如果是两个以上的单片机工作使用哪一种【28】80C51单片机的信号有何功能在使用8031时,信号引脚应如何处理现在使用EAEA的80C51系列单片机内部一般均含有ROM,其引脚应该怎么接E【29】80C51系列单片机的三总线结构包括哪三种其中作地址总线指的是作数据总线指的是属于控制总线的有P0口的分时复用功能需要依靠锁存器的锁存功能,试举1种常用的低功耗锁存器并将其与单片机正确连接【210】片内RAM低128单元一般划分为哪三个主要部分对应的字节地址空间是内部RAM中,可作为工作寄存器区的单元地址为()H()H。【211】80C51单片机任何一个时间4组通用工作寄存器中只能有一组工作,具体哪一组工作由什么来决定如何设置才能选用0组通用寄存器【212】80C51单片机具有很强的位(布尔)处理功能,内部RAM中共有多少单元可以位寻址,试写出其字节范围和位地址范围【213】位地址00H与字节地址00H在内存中的位置有什么区别片内字节地址为2AH单元最低位的位地址是();片内字节地址为88H单元的最低位的位地址为()。【214】80C51单片机可位寻址的范围包括两个区域,即可位寻址的特殊功能寄存器和内部RAM字节地址是20H2FH的单元,这句话表述的是否正确【215】可位寻址的特殊功能寄存器的最低位位地址与字节地址形式不同,这句话表述是否正确【216】堆栈遵循的原则是什么SP的名称是初始化时SP的值是多少通过堆栈操作实现子程序调用时,首先要把()的内容入栈,以进行断点保护;调用子程序返回指令时,再进行出栈保护,把保护的断点进回到()。【217】程序状态字PSW的作用是什么常用的状态标志有哪几位,其作用是什么若A中的内容为63H,那么P标志位的值为();单片机复位后,PSW(),这时当前的工作寄存器区是()组工作寄存器区R4所对应的存储单元的地址为()。【218】判断下列说法是否正确。(1)AT89S51中特殊功能寄存器(SFR)就是片内RAM中的一部分。()(2)片内RAM的位寻址区,只能供位寻址使用而不能进行字节寻址。()(3)AT89S51共有21个特殊功能寄存器,它们的位都是可用软件设置的,因此,是可以进行位寻址的。()(4)SP称之为堆栈指针,其指示了栈顶单元的地址。()【219】80C51单片机外部扩展ROM或RAM时,都会用到哪个引脚和锁存器连接,从而实现P0口地址和数据的分时复用【220】80C51系列单片机的PSEN引脚的作用是什么80C51系列单片机的RD和W引脚的作用是什么【221】在80C51单片机扩展系统中,片外程序存储器和片外数据存储器共处同一地址空间为什么不会发生冲突【222】试绘制AT89S51单片机的最小系统图。【223】80C51单片机的P0口作地址和数据总线时为真正的双向口,不须接上拉电阻;作普通I/O口使用时需要接上拉电阻,否则不能正确输出高电平,要想保证能正确的读入各引脚的状态,在读入时还需要先执行向端口写“1”的操作,这句话表述是否正确【224】P0P3口四个口线作普通I/O口使用时使用方法完全一样这四个口当要正确的读入引脚状态时,一般需要先执行向端口写“1”操作。例如MOVP0,0FFH,这句话是否正确但系统复位后,P0P3四个口端口线如电平未作任何修改,当需要采集引脚输入状态时,不需要执行写“1”操作指令,结果也是正确的原因是什么【225】80C51单片机I/O口的灌电流远远大于拉电流,因此一般其I/O口输出低电平驱动外设,该表述是否正确【226】AT89S51的4个并行双向口P0P3的驱动能力各为多少要想获得较大的输出驱动能力,采用低电平输出还是使用高电平输出【227】试说出80C51单片机有2种复位方法单片机复位后SP/PC/P0P3这些特殊功能寄存器的状态【228】80C51单片机运行出错或程序进入死循环,如何摆脱困境【229】80C51单片机有几种低功耗方式第二章思考题答案【21】解答(1)80C51单片机由八个部分组成中央处理单元CPU(8位)、只读存储器ROM(4KB或8KB)、随机存取存储器RAM(256B)、特殊功能寄存器、并行接口、串行接口、定时/计数器、中断系统。(2)只读存储器ROM用于存储应用程序和常数,随机存取存储器RAM用于存放程序运行中的工作变量数据。【22】解答C。【23】解答(1)错误(2)正确(3)正确(4)正确【24】解答(1)若80C51单片机振荡频率为12MHZ时,则振荡周期1/12MHZ(1/12)S00833S833NS时钟周期1/6S0167S机器周期1S若80C51单片机振荡频率为6MHZ时,则振荡周期1/6MHZ(1/6)S167S167NS时钟周期1/3S0334S机器周期2S(2)振荡周期是最小的定时单位,也称为晶振周期或节拍;一个时钟周期包含2个振荡周期,也称为状态周期;一个机器周期包含12个振荡周期;不同的指令一般其指令周期一般不同,可包含有1、2、4个机器周期。【25】解答正确。因为ROM是用来存放程序的,程序如果掉电丢失系统将会瘫痪,因此掉电存储是对ROM的根本要求。【26】解答正确。RAM中存放的是程序运行所产生的中间变量数据,因此速度快是它的根本要求。掉电丢失后,不影响程序的重新启动。【27】解答(1)两种时钟电路模式分别是内部时钟模式和外部时钟模式。(2)只有一个单片机工作时,经常使用的一般是内部时钟模式。(3)外部时钟模式。其把外部已有的时钟信号引入单片机内,通常便于两个以上单片机工作的同步。【28】解答(1)80C51单片机的信号用来决定CPU是执行内部ROM还是外部ROM的程序。当端保持高EAEA电平时,CPU只访问内部程序存储器,但在PC(程序计数器)值超过0FFFH(51单片机基本型一般ROM为4KB)或1FFFH(51单片机增强型一般ROM为8KB)时,将自动转向访问外部存储器。当端保持低电平时,不管是否有内部程序存储器,只访问外部程序存储器。EA(2)在使用8031时,由于8031没有内部ROM,所以信号引脚始终保持低电平。EA(3)通常对于拥有内部ROM的单片机,信号接高电平。【29】解答(1)80C51系列单片机的三种总线结构包括地址总线(AB)、数据总线(DB)和控制总线(CB)。(2)其中用作地址总线的是P0、P2,由于地址总线宽度为16位,由P0口经地址锁存器提供低8位地址(A0A7),P2口直接提供高8位地址(A8A15);(3)用作数据总线的是P0;(4)用作控制总线的是P3口的第二功能状态和4根独立控制线、ALE、PSEN、RESET组成。EA【210】解答(1)80C51单片机内部数据存储器128单元,分为工作寄存器区、位寻址区、用户RAM区三个区域。(2)工作寄存器区占用地址00H1FH,安排了4组工作寄存器,每组占用8个RAM字节,记为R0R7;位寻址区占用地址20H2FH,共16B,168128位,每一位都有一个位地址,对应位地址00H7FH,位地址区也可作为一般RAM使用;用户RAM区占用地址为30H7FH。是留给用户使用的一般RAM区域,主要用来存放随机数据和中间结果。(3)00H1FH。【211】解答(1)特殊功能寄存器PSW的RS1、RS0决定当前工作寄存器组号。(2)当RS1、RS0的取值都为00时,选中的是0组通用寄存器。一般在单片机复位之后,特殊功能寄存器PSW的初值为00H,所以,如若选用0组通用寄存器,并不需要特别设置。【212】解答80C51单片机内部RAM中可以位寻址的单元共16个字节单元,字节地址是20H2FH,对应的位地址是00H7FH。【213】解答(1)字节地址00H和位地址00H虽然形式上一样,但是所占的位置不同,字节地址是00H的单元正好与0组通用寄存器组的R0位置重合。位地址00H在内存中的具体位置是内部RAM20H字节的最低位。(2)00H;88H。【214】解答正确。80C51单片机有两个区域可以位寻址一个是位寻址区20H2FH单元的128位;另一个是字节地址能被8整除的特殊功能寄存器的相应位。【215】解答错误。可位寻址的特殊功能寄存器的最低位位地址与字节地址在形式上是相同的。【216】解答(1)堆栈遵循的是“先进后出,后进先出”的存取原则。(2)SP的名称是堆栈指针。(3)在80C51单片机复位后,堆栈指针SP总是初始化到内部RAM地址07H。(4)主程序的断点地址;PC。【217】解答(1)程序状态字寄存器PSW是一个8位寄存器,存放程序、指令运行的状态信息。(2)常用的状态标志位CY进位、借位标志。有进位、借位时由硬件置位CY1,否则CY0;AC半进、借位(辅助进、借位)标志;加减法时低4位向高4位进位或借位时,由硬件置位AC1,否则AC0,应用于十进制调整;F0用户标志位(软件位),由用户自己定义;RS1、RS0当前工作寄存器组选择位;P奇偶标志位。ACC中结果有奇数个1时P1,否则P0。OV溢出标志位。有溢出时OV1,否则OV0。硬件置位/清零。(3)P为0;00H;0组;04H。【218】解答(1)错误(2)错误(3)错误(4)正确【219】解答80C51单片机外部扩展ROM或RAM时,需要ALE引脚与锁存器连接。其与锁存器连接后可以实现P0口地址和数据的分时复用。【220】解答(1)PSEN引脚的作用是外部程序存储器的读选通信号,低电平有效。在外部程序存储器取指令(或常数)期间,每一个机器周期两次有效。每当访问外部数据存储器时,这两次有效的信号将不出现。(2)RD引脚的作用是外部扩展数据存储器和I/O端口的读选通信号,输出,低电平有效;(3)W引脚的作用是扩展数据存储器和I/O端口的写选通信号,输出,低电平有效。【221】解答在80C51单片机扩展系统中,片外程序存储器和片外数据存储器虽然共用相同的地址空间吗,但访问两者所用的控制总线不同。访问ROM时PSEN有效,访问RAM时RD和R有效,因此并不会发生总线冲突。【222】解答AT89S51单片机的最小系统图【223】解答正确。80C51单片机的P0口作地址和数据总线时为真正的双向口,能正确的呈现高电平、低电平和高阻态。当80C51单片机的P0口作普通I/O口时,其为准双向口且内部无上拉电阻。因此为能正确输出高电平需要外接上拉电阻,当要正确的读入引脚状态时,还需要先执行MOVP0,0FFH。系统复位时P0口为高电平,复位后如未改变过端口引脚状态可以不需要先执行写“1”操作直接读入。【224】解答(1)错误。P0P3四个口线作普通I/O口使用时虽然均为准双向口,无高阻态输入。但是P0口内部还没有上拉电阻,无法输出高电平,因此还需要外部连接上拉电阻。(2)正确。(3)因为系统复位后,P0P3口均为高电平。【225】解答正确。P0口与P1、P2、P3口相比,P0口的驱动能力较大(输出或灌入电流较大,灌入电流指流入单片机引脚的电流),而P1,P2,P3口的每一位的驱动能力(能够正常工作的最大电流),只有P0口的一半。当P0口的某位为高电平时,只可提供几十到上百A的电流,难以驱动外部设备;当P0口的某位为低电平,可提供几到十几MA的灌入电流,简称灌电流。所以,任何一个并口连接外部设备时一般只能用低电平输出。51单片机除对各引脚驱动能力有限制外,一个并口的8个引脚总的驱动能力并不是单根口线的8倍,也有一定的限制。以器件AT89S52为例,每根口线最大可吸收10MA的(灌)电流,但P0口所有引脚的吸收电流的总和不能超过26MA,而P1,P2,和P3每个口吸收电流的总和限制在15MA,全部4个并行口所有口线的吸收电流总和限制在71MA。【226】解答其四个口线的驱动能力不同,而P1,P2,P3口的每一位的驱动能力(能够正常工作的最大电流)只有P0口的一半。51单片机除对各引脚驱动能力有限制外,一个并口的8个引脚总的驱动能力并不是单根口线的8倍,也有一定的限制。以器件AT89S51为例,每根口线最大可吸收10MA的(灌)电流,但P0口所有引脚的吸收电流的总和不能超过26MA,而P1,P2,和P3每个口吸收电流的总和限制在15MA,全部4个并行口所有口线的吸收电流总和限制在71MA。其每根口线的拉电流(从单片机引脚流向外部的电流)约为几十到几百微安。当P0口的某位为高电平时,只可提供几十到上百A的电流,难以驱动外部设备;当P0口的某位为低电平,可提供几到十几MA的灌入电流,简称灌电流。所以,任何一个并口连接外部设备时一般只能用低电平输出。【227】解答(1)80C51单片机有上电复位和按键复位。(2)80C51进入复位状态后,除SP为07H,P0P3为FFH,PC0000H。【228】解答单片机运行出错或进入死循环时,可按复位键重新运行。【229】解答80C51单片机有2种低功耗方式空闲工作方式和掉电保护。思考题【31】汇编语言与C语言哪种语言的可读性和可移植性强在对速度和时序敏感的场合应该使用什么语言对于复杂的单片机系统一般采用C与汇编混合编程的形式这句话对吗【32】二进制机器语言与C和汇编语言两者之间是什么关系用C或汇编编制的程序在ROM中是以编译后的二进制代码的形式存放这句话对吗【33】80C51系列单片机指令的格式包含哪几个部分各部分之间的间隔符是什么四个部分中哪个部分是必须存在的,哪几个部分是可有可无的标号的格式和代表的意义是【34】80C51系列单片机有哪几种寻址方式【35】80C51单片机中立即数是存放在ROM中还是RAM中【36】判断下列说法是否正确。(1)立即数寻址方式是被操作的数据本身就在指令中,而不是它的地址在指令中。()(2)指令周期是执行一条指令的时间。()(3)指令中直接给出的操作数称为直接寻址。()(4)内部寄存器RN(N07)可作为间接寻址寄存器。()【37】80C51单片机可以进行直接寻址的区域是【38】80C51单片机可以进行寄存器寻址的范围是【39】80C51单片机可以进行寄存器间接寻址的寄存器是寻址的范围是【310】在寄存器间接寻址方式中,其“间接”体现在指令中寄存器的内容不是操作数,而是操作数的()。【311】80C51单片机变址寻址方式中可以作基址的寄存器是可以作变址的寄存器是APC,ADPTR所找到的操作数是在ROM中对吗【312】80C51单片机相对寻址改变的是PC的当前值,即改变的CPU执行指令的顺序这句话对否【313】若访问特殊功能寄存器,只可以采用那种寻址方式【314】若访问外部RAM单元,只可以使用哪种寻址方式【315】若访问内部RAM单元,可使用哪些寻址方式【316】若访问内外程序存储器,可使用哪些寻址方式【317】80C51单片机可以进行位寻址的字节单元范围除11个可位寻址的特殊功能寄存器外还包括哪个区域分别找出位地址是00H、08H、22H、7FH、D0H、E0H对应的字节地址【318】已知(30H)40H,(40H)10H,(10H)32H,(P1)0EFH,试写出执行以下程序段后有关单元的内容。MOVR0,30HMOVA,R0MOVR1,AMOVB,RIMOVR1,P1MOVP2,P1MOV10H,20HMOV30H,10H【319】为什么对基本型的51子系列单片机(片内RAM为128B),其寄存器间接寻址方式(例如MOVA,R0)中,规定R0或R1的内容不能超过7FH【320】外部RAM数据传送指令有几条试比较下面每一组中两条指令的区别(1)MOVXA,R1MOVXA,DPTR(2)MOVXA,DPTRMOVXDPTR,A(3)MOVR0,AMOVXR0,A(4)MOVCA,ADPTRMOVXA,DPTR【321】假定累加器A中的内容为30H,执行指令1000HMOVCA,APC后,把程序存储器()单元的内容送入累加器A中。【322】在AT89S51中,PC和DPTR都用于提供地址,但PC是为访问()提供地址,而DPTR是为访问()和()提供地址。【323】试写出完成以下数据传送的指令序列。(1)R1的内容传送R0;(2)片外RAM60H单元的内容送入R0;(3)片外RAM60H单元的内容送入片内RAM40H单元;(4)片外RAM1000H单元的内容送入片外RAM40H单元。【324】试编程,将外部RAM1000H单元中的数据与内部RAM60H单元中的数据相互交换。【325】对程序存储器的读操作。只能使用()。A)MOV指令B)PUSH指令C)MOVX指令D)MOVC指令【326】(DPTR)507BH,(SP)32H,(30H)50H,(31H)5FH,(32H)3CH,则执行下列指令后,(DPH)(),(DPL)(),(SP)()。POPDPHPOPDPLPOPSP【327】假定,(SP)60H,(A)30H,(B)70H,执行下列指令后,SP的内容为(),61H单元的内容为(),62H单元的内容为()。PUSHACCPUSHB【328】已知程序执行前有(A)02H,(SP)52H,(51H)FFH,(52H)FFH。下述程序执行后,(A)(),(SP)(),(51H)(),(52H)(),(PC)()。POPDPHPOPDPLMOVDPTR,4000HRLAMOVB,AMOVCA,ADPTRPUSHACCMOVA,BINCAMOVCA,ADPTRPUSHACCRETORG4000HDB10H,80H,30H,50H,30H,50H【329】已知(A)5BH,(R1)40H,(40H)C3H,(PSW)81H,试写出各条指令的执行结果,并说明程序状态字的状态。(1)XCHA,R1(2)XCHA,40H(3)XCHA,R1(4)XCHDA,RL(5)SWAPA(6)ADDA,R1(7)ADDA,40H(8)ADDA,40H(9)ADDCA,40H(10)SUBBA,40H(11)SUBBA,40H【330】试分析下面两组指令的执行结果有何不同(1)MOVA,0FFH(2)MOVA,0FFHINCAADDA,O1H【331】DAA指令有什么作用怎样使用【332】已知(A)87H,(R0)42H,(42H)24H,请写出执行下列程序段后A的内容。ANLA,23HORL42H,AXRLA,R0CPLA【333】写出完成如下要求的指令但是不能改变未涉及位的内容。(1)把ACC3,ACC4,ACC5和ACC6清0。(2)把累加器A的中间4位清0。(3)把ACC2和ACC3置1。【334】假定(A)83H,(R0)17H,(17H)34H,执行以下指令后,(A)()。ANLA,17HORL17H,AXRLA,R0CPLA【335】假设(A)55H,(R3)0AAH,在执行指令“ANLA,R3”后,(A)(),(R3)()。【336】已知组合逻辑关系式为FABC,请编写模拟其功能的程序。设A、B、C、F均代表位地址。【337】编程完成下述操作。(1)将外部RAM1000H单元的所有位取反;(2)将外部RAM60H单元的高2位清零,低两位变反,其余位保持不变。【338】试用位操作指令实现逻辑操作P10(10HP10),PSW1(18HCY)。【339】仔细辨析下列指令的意义,找出错误的指令,并简要说明原因。(1)CLRA(2)CLREOH(3)CLRACC(4)CLRACC0(5)CPLA(6)CPLEOH(7)CPLACC(8)CPLACC0【340】指令LJMPADDRL6和AJMPADDRL1的区别是什么【341】试分析以下两段程序中各条指令的作用,程序执行完将转向何处(1)MOVP1,0CAHMOVA,56HJBP122,L1JNBACC3,L2L1L2(2)MOVA,43HJBACC2,L1JBCACC6,L2L1L2【342】判断以下指令的正误。(1)MOV28H,R2;(2)DECDPTR;(3)INCDPTR;(4)CLRR0;(5)CPLR5(6)MOVR0,R1;(7)PUSHDPTR;(8)MOVF0,C;(9)MOVF0,ACC3;(10)MOVXA,R1;(11)MOVC,30H;(12)RLCR0【343】借助指令表(附录B),对如下指令代码(十六进制)进行手工反汇编。FFC0E0E5F0【344】以下指令中,属于单纯读引脚的指令是()。A)MOVP1,AB)ORLP1,0FHC)MOVC,PL5D)ANLP1,0FH【345】用AT89S51单片机的P1口做输出,经驱动电路接8个发光二极管,见图311所示。当输出位为“0”时,发光二极管点亮;输出为“1”时,发光二极管为暗。试编制程序将8个发光二极管全部点亮;将8个发光二极管全部熄灭;将8个发光二极管隔一个点亮一个;每次亮一个,循环左移,一个一个地亮,循环不止。图311单片机P1口驱动发光二极管【346】如图312所示,这是由AT89C51构建的最小系统,外部连接了4个按键S1S4及4个发光二极管LEDLLED4,P1口的高4位用于接收按键的输入状态,而低4位用于驱动发光二极管。请结合图示,编写程序,完成以下要求。(1)若SL闭合,则发光二极管LEDL点亮;若S2闭合,则发光二极管LED2点亮。以此类推,即发光二极管实时反映按键状态。(2)用4个发光二极管实现对按键键值的BCD编码显示。即若SL闭合,键值为1,编码为0001,LEDL点亮;若S2闭合,键值为2,编码为0010,LED2点亮;若S3闭合,键值为3,编码为0011,LEDI、LED2同时点亮;若S4闭合,键值为4,编码为0100,LED3点亮。图312第三章思考题答案【31】解答(1)C语言那种语言的可读性和可移植性强,例如对于用C语言编制的51单片机程序,只需要稍作修改就可以移植到PIC类型的单片机上。(2)汇编语言适用于对速度和时序敏感的场合。(3)正确。【32】解答(1)C语言与汇编语言经过编译后将是二进制的机器语言。(2)正确。【33】解答(1)一条完整的汇编语言指令包括标号、操作码、操作数和注释四部分。(2)其中标号与操作码用冒号分隔,操作码和操作数之间用空格,多个操作数之间用逗号分隔,注释用冒号开头。(3)四个部分中操作码是必须存在的,其他三部分在有的指令中可以不出现。(4)标号是一种符号地址。标号以字母开头,由18个字母或数字组成。【34】解答80C51系列单片机提供了七种寻址方式立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址(基址寄存器变址寄存器间接寻址)、相对寻址、位寻址。【35】解答立即寻址寻址方式中的立即数是存放在ROM中。【36】解答(1)正确(2)正确(3)错误(4)错误【37】解答直接寻址方式可访问以下存储空间内部RAM低128个字节单元,指令中直接地址以单元地址的形式给出。特殊功能寄存器。【38】解答寄存器寻址中规定的寄存器有工作寄存器R0R7。累加器A。双字节AB。数据指针DPTR。【39】解答(1)能用于间接寻址的寄存器有R0,R1,DPTR,SP。其中R0、R1必须是工作寄存器组中的寄存器。(2)采用R0、R1作为间址寄存器,可寻址内部RAM的低128个单元和外部RAM低256个单元单元;采用16位的DPTR作为间址寄存器,可寻址外部RAM的整个64KB地址空间。【310】解答地址。【311】解答(1)80C51单片机变址寻址方式中是以DPTR或PC作基址寄存器,以累加器A作变址寄存器。(2)是的。APC,ADPTR寻址所找到的操作数是在ROM中。【312】解答正确。80C51单片机凡是指令中带有REL相对偏移量的指令,其PC的改变都是相对的。【313】解答若访问特殊功能寄存器,只可以采用直接寻址。【314】解答若访问外部RAM单元,只可以使用寄存器间接寻址方式。【315】解答若访问内部RAM单元,可使用直接寻址、寄存器寻址、寄存器间接寻址和位寻址。【316】解答若访问内外程序存储器,可使用变址寻址方式。【317】解答(1)还包含内部RAM的20H2FH,共16个字节,168128个位,每一位都有一个位地址,对应位地址00H7FH。(2)位地址是00H、08H、22H、7FH、D0H、E0H对应的字节地址分别是20H、21H、24H、2FH、D0H、E0H。【318】解答R030H,(R0)30HA(R0),(A)40HR1(A),(R1)40HB(R1),(B)10H(R1)(P1),(R1)(40H)EFHP2(P1),(P2)EFH10H20H,(10H)20H30H(10H),(30H)20H结果(R0)30H,(A)40H,(R1)40H,(B)10H,(40H)EFH,(P2)EFH,(10H)20H,(30H)20H【319】解答因为寄存器间接寻址方式中R0或R1的内容是操作数的RAM地址,内部RAM的寻址范围是00H7FH。【320】解答外部数据传送指令有4条MOVXA,DPTR;MOVXDPTR,A;MOVXA,RI;MOVXR,A。(1)都是访问片外RAM,但二者寻址范围不同。前1条指令是对片外RAM低256个单元的“读”操作;后1条指令是对片外RAM64KB空间的“读”操作。(2)访问空间相同,但数据传送方向不同。前1条指令是对片外RAM64KB空间的“读”操作;后1条指令是对片外RAM64KB空间的“写”操作。(3)访问空间不同。前1条指令是对片内RAM低128个单元的“写”操作;后1条指令是对片外RAM低256个单元的“写”操作。(4)二者访问的空间不同,寻址方式不同。前1条指令是变址寻址方式,对ROM操作;后1条指令是寄存器间接寻址方式,对片外RAM操作。【321】解答1031H。【322】解答ROM;ROM和外部RAM。【323】解答(1)由于在工作寄存器与工作寄存器之间不能直接传送数据,所以需要借助累加器A。MOVA,R1MOVR0,A(2)片外RAM向片内RAM传送数据,不能直接进行,需要借助累加器A。由于片外RAM是60H单元,地址小于FFH,所以间址寄存器使用RI即可。MOVR1,60HMOVXA,R1MOVR0,A(3)MOVR1,60HMOVXA,R1MOV40H,A(4)片外数据不能直接送入片外单元,需要先将片外数据读入累加器,然后再送到片外。MOVDPTR,1000HMOVXA,DPTRMOVR1,40HMOVXR1,A【324】解答片外RAM与片内RAM之间的数据传送不能直接进行,需要借助累加器A。数据交换需要使用数据交换指令XCH。MOVDPTR,1000HMOVXA,DPTRXCHA,60HMOVXDPTR,A【325】解答D。【326】解答3CH;5FH;50H。【327】解答30H;70H。【328】解答50H;52H;30H;50H;5030H。【329】解答(1)结果(A)(R1),(A)40H,(R1)5BH,(PSW)81H(2)结果(A)(40H),(A)C3H,(40H)5BH,(PSW)80H(3)结果(A)(R1),(A)C3H,(R1)(40H)5BH,(PSW)80H(4)结果(A)03(R1)03,(A)53H,(R1)(40H)CBH,(PSW)80H(5)结果(A)03(A)47,(A)B5H,(PSW)81H(6)结果A(A)(R1),(A)9BH,(PSW)05H(7)结果A(A)(40H),(A)1EH,(PSW)80H(8)结果A(A)40H,(A)9BH,(PSW)05H(9)结果A(A)(40H)CY,(A)1FH,(PSW)81H(10)结果A(A)(40H)CY,(A)97H,(PSW)85H(11)结果A(A)40HCY,(A)1AH,(PSW)01H【330】解答(1)该组指令执行后(A)00H,不影响CY位。(2)该组指令执行后(A)00H,影响CY位。说明单独执行INC指令,只影响奇偶标志位P,不影响半进位标志位AC和进位位CY位。执行ADD指令后,将影响CY、AC和P位。【331】解答DAA指令的作用是对A中刚进行的两个BCD码的加法结果进行修正,即继续使BCD码加法运算的结果保持为BCD码。使用时,DAA指令只能使用在加法指令后,即ADD指令和ADDC指令。【332】解答A(A)23H,(A)03H42H(42H)(A),(42H)37HA(A)(R0),(A)34HA(),(A)CBH结果(A)CBH【333】解答(1)ANLA,87H(2)ANLA,0C3H(3)ORLA,0CH【334】解答0CBH。【335】解答00H;0AAH。【336】解答ANLA,BORLA,CMOVF,C【337】解答(1)MOVDPTR,1000HMOVXA,DPTRCPLAMOVXDPTR,A(2)MOVR0,60HMOVXA,R0ANLA,3FHXRLA,03HMOVXR0,A【338】解答(1)MOVC,10HANLC,P10(2)ORLC,18HMOVPSW1,C【339】解答(1)正确。(2)错误。原因清零指令只能用于累加器ACC和位操作,而本题中E0H只能是字节地址(位地址的范围是00H7FH),所以该条指令错误。(3)错误。原因ACC是直接字节地址,不能用于清零指令。(4)正确。ACC0是一个位,可以应用到清零指令中。(5)正确。(6)错误。原因取反指令只能用于累加器ACC和位操作,而本题中E0H只能是字节地址(位地址的范围是00H7FH),所以该条指令错误。(7)错误。原因ACC是直接字节地址,不能用于取反指令。(8)正确。ACC0是一个位,可以应用到取反指令中。【340】解答指令LJMPADDR16是长转移指令,指令中提供了16位目的地址,寻址范围是64KB。指令AJMPADDR11是绝对转移指令,指令中11位目的地址,其中A7A0在第二字节,A10A8则占据第一字节的高3位,寻址范围是与PC当前值(本指令所在地址本条指令所占用的字节数2)在同一个2K的区域内。【341】解答(1)MOVP1,0CAH;P1CAH,P1CAH11001010BMOVA,56H;A56H,A56H01010110BJBP12,L1;若P121,则转移至L1JNBACC3,L2;若ACC30,则转移至L2L1L2执行完本段程序后将转移至L2,因为P120,ACC30,所以转至L2。(2)MOVA,43H;A43H,A43H01000011BJBACC2,L1;若ACC21,则转移至L1JBCACC6,L2;若ACC61,则转移至L2,同时将ACC6清零L1L2执行完本段程序后将转移至L2,因为ACC20,ACC61,所以转至L2,并且将ACC6清零。【342】解答(1)错误。可以做间接寄存器的只有R0和R1,不包括R2。(2)错误。(3)错误。(4)错误。CLR的操作数只能是C或BIT。(5)错误。CPL的操作数只能是C或BIT。(6)错误。两个寄存器间不能直接进行数据传送。(7)错误。PUSH指令时字节操作指令。(8)正确。(9)错误。位传送指令只进行C和位地址间的数据互送。(10)正确。(11)正确。位操作指令。(12)错误。RLC指令的操作数只能是A。【343】解答(1)FFMOVR7,A(2)C0PUSHDIRECT(3)E0MOVXA,DPTR(4)E5MOVA,DIRECT(5)F0MOVXDPTR,A【344】解答C。【345】解答(1)MOVA,00HMOVP1,A(2)MOVA,0FFHMOVP1,A(3)MOVA,AAH(或是55H)MOVP1,A(4)MOVA,0FEHLOOPMOVP1,ARLALCALLDELAYSJMPLOOPDELAYMOVR7,01HDELAY1MOVR6,01HDJNZR6,DJNZR7,DELAY1RET【346】解答(1)MOVA,P1CPLAANLA,0F0HSWAPAMOVP1,A(2)LOOPJNBP14,L1JNBP15,L2JNBP16,L3JNBP17,L4LJMPLOOPL1MOVP1,01HLJMPLOOPL2MOVP1,02HLJMPLOOPL3MOVP1,03HLJMPLOOPL4MOVP1,04HLJMPLOOP思考题【41】说明伪指令的作用。“伪”的含义是什么常用伪指令有哪些,其功能如何【42】解释下列术语1手工汇编2机器汇编【43】下列程序段经汇编后,从1000H开始的各有关存储单元的内容是什么ORG1000HTAB1EQU1234HTAB2EQU3000HDB0,1,4,5DWTAB1,TAB2,70H【44】设计子程序时应注意哪些问题【45】试编写一个程序,将内部RAM中45H单元的高4位清0,低4位置1。【46】已知程序执行前有A02H,SP42H,(41H)FFH,(42H)FFH。下述程序执行后,A();SP();(41H)();(42H)();PC()。POPDPHPOPDPLMOVDPTR,3000HRLAMOVB,AMOVCA,ADPTRPUSHACCMOVA,BINCAMOVCA,ADPTRPUSHACCRETORG3000HDB10H,80H,30H,80H,50H,80H【47】试编写程序,查找在内部RAM的30H50H单元中是否有0AAH这一数据。若有,则将51H单元置为“01H”;若未找到,则将51H单元置为“00H”。【48】试编写程序,查找在内部RAM的20H40H单元中出现“00H”这一数据的次数,并将查找到的结果存入41H单元。【49】在内部RAM的21H单元开始存有一组单字节无符号数,数据长度为20H,编写程序,要求找出最大数存入MAX单元。【410】若SP60H,标号LABEL所在的地址为3456H。LCALL指令的地址为2000H,执行如下指令2000HLCALLLABEL后,堆栈指针SP和堆栈内容发生了什么变化PC的值等于什么如果将指令LCALL直接换成ACALL是否可以如果换成ACALL指令,可调用的地址范围是什么【411】若80C51的晶振频率为6MHZ,试计算延时子程序的延时时间DELAYMOVR7,0F61个机器周期LPMOVR6,0FA1个机器周期DJNZR6,2个机器周期DJNZR7,LP2个机器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论