单片机原理及应用技术苏家建曹柏荣汪志锋课后习题参考答案
单片机原理及应用教程(第2版)各章习题参考答案
3.简答题 (1) 单片机与微处理器的联系与区别: 微型计算机技术形成了两大分支:微处理器(MPU)和微控制器(MCU,即单片机)。
·2·
单片机原理及应用教程(第 2 版)
MPU是微型计算机的核心部件,它的性质决定了微型计算机的性能。通用型的计算机 已从早期的数值计算、数据处理发展到当今的人工智能阶段,它不仅可以处理文字、字符、 图形、图像等信息,而且还可以处理音频、视频等信息,并向多媒体、人工智能、虚拟现 实、网络通信等方向发展。它的存储容量和运算速度正在以惊人的速度发展,高性能的32 位、64位微型计算机系统正向大、中型计算机挑战。 MCU主要用于控制领域。由它构成的检测控制系统应该具有实时的、快速的外部响应 的功能,应该能迅速采集到大量数据,并在做出正确的逻辑推理和判断后实现对被控对象 参数的调整与控制。单片机直接利用了MPU 的发展成果,也发展了16 位、32 位、64 位 的机型,但它的发展方向是高性能、高可靠性、低功耗、低电压、低噪声和低成本。目前, 单片机仍然是以8 位机为主,16 位、32 位、64 位机并行发展的格局。单片机的发展主要 还是表现在其接口和性能不断满足多种多样检测对象的要求上,尤其突出表现在它的控制 功能上,用于构成各种专用的控制器和多机控制系统。 单片机与微型计算机的联系与区别: 从组成方面,微型计算机(通用机)通常将 CPU、RAM、 I/O 口、ROM 等部件以芯 片形式安装在主板上; 单片机则将上述部件被集成到单芯片中。 从功能方面,通用计算机擅长于数据运算、采集、处理、存储和传输;单片机的专长 则是测控,往往嵌入某个仪器/设备/系统中,使其达到智能化的效果。 (2) 集成度高、体积小;面向控制、功能强;抗干扰能力强;功耗低;使用方便;性 能价格比高;容易产品化;等等。 (3) 单片机内部一般包括中央处理器 CPU、随机存储器 RAM、只读存储器 ROM、输 入/输出接口电路、定时器/计数器以及串行通信接口等。 中央处理器 CPU 是单片机的核心部件,实现运算器、控制器的功能以及中断控制等; RAM 一般作为数据存储器,用来存储数据,暂存运行期间的数据、中间结果、堆栈、位 标志和数据缓冲等;ROM 一般作为程序存储器,用于存放应用程序;并行 I/O 口,使用上 不仅可灵活地选择输入或输出,还可作为系统总线或控制信号线,从而为扩展外部存储器 和 I/O 接口提供了方便;串行 I/O 用于串行通信;定时器/计数器用于产生定时脉冲,以实 现单片机的定时控制。 (4) 由于单片机功能的飞速发展,它的应用范围日益广泛,已远远超出了计算机科学 的领域。小到玩具、信用卡,大到航天器、机器人,从实现数据采集、过程控制、模糊控 制等智能系统到人类的日常生活,现已广泛应用于国民经济的各个领域,主要包括工业过 程控制、智能仪表、机电一体化产品、智能化接口、家用电器等领域。 (5) MCS-51系列;AT89系列;PIC系列;M68HC11系列;MCS-96系列;8XC196KX 系列;MSP430系列;SPCE系列;M68300系列;SH系列;TX99/TX49系列单片机等。
单片机原理及应用课后习题答案
单⽚机原理及应⽤课后习题答案单⽚机原理及应⽤课后习题答案课后思考题级习题答案思考题与习题1⼀、填空1.单⽚机按照⽤途通常分为通⽤型和专⽤型。
2.单⽚机也称为微控制器和单⽚微型计算机。
⼆、简答1.什么是单⽚机?答:单⽚机也称微控制器,它是将中央处理器、程序处理器、数据处理器、输⼊/输出接⼝、定时/计数器串⾏⼝、系统总线等集成在⼀个半导体芯⽚上的微计算机,因此⼜称为单⽚微型计算机,简称为单⽚机。
2.简述单⽚机的特点和应⽤领域。
答:(1)单⽚机体积⼩,应⽤系统结构简单,能满⾜很多应⽤领域对硬件功能的要求。
(2)单⽚机的可靠性⾼。
(3)单⽚机的指令系统简单,易学易⽤。
(4)单⽚机的发展迅速,特别是最近⼏年,单⽚机的内部结构越来越完善。
3.写出AT89S51与AT89S52芯⽚的主要区别。
内部程序存储区容量不同,52的程序存储空间为8K ,内部数据存储空间为256B ,中断源8个,定时器/计数器有3个,⽽51的程序存储空间为4K ,内部数据存储空间为128B ,中断源5个,定时器/计数器有2个。
思考题与习题2⼀、填空题1.如果(PSW )=10H, 则内部RAM ⼯作寄存器区的当前寄存器是第⼆组寄存器,8个寄存器的单元地址为 10H ~ 17H 。
2.为寻址程序状态字F0位,可使⽤的地址和符号有 PSW.5 、 0D0H.5 、 F0 和 0D5H 。
3.单⽚机复位后,(SP )= 07H ,P0~P3= FFH ,PC= 0000H ,PSW= 00H A= 00H 。
4.AT89S51单⽚机的程序存储器的寻址范围是由 PC 决定的,由于AT89S51单⽚机的PC 是 16 位的,所以最⼤寻址范围为64KB 。
5.写出位地址为20H 所在的位,字节地址 24H.0 。
6.写出字节地址为20H 的单元最⾼位的位地址为 07H ,最低位的位地址为 00H 。
7.如果晶振频率MHz 6OSC f ,则⼀个时钟周期为1.66667E-7,⼀个机器周期为2us 。
《单片机原理及应用》课后习题 答案.
第1章1-1 什么是单片机?它与一般微型计算机在结构上何区别?答:单片微型计算机简称为单片机(Single Chip Computer),又称为微控制器(MCU 即Micro-Controller Unit)。
它是在一块芯片上集成了中央处理器(CPU)、存储器(RAM、ROM)、定时器/计数器、中断控制、各种输入/输出(I/O)接口(如并行I/O口、串行I/O口和A/D转换器)等为一体的器件。
微型计算机的基本结构由CPU(运算器、控制器)、存储器、输入设备和输出设备五大部分组成,各部分通过外部总线连接而成为一体。
单片机的结构是在一块芯片上集成了中央处理器(CPU)、存储器、定时器/计数器、中断控制、各种输入/输出接口(如并行I/O口、串行I/O口和A/D转换器)等,它们通过单片机内部部总线连接而成为一体。
1-2 MCS-51系列单片机内部资源配置如何?试举例说明8051与51兼容的单片机的异同。
1-3 新型8位单片机,主要在哪几方面发展了?使用新型8位单片机能带来什么好处?1、运算速度大大提高;2、RAM、ROM容量增大;3、精简指令集,指令比51少很多;4、更多的IO口;5、更多的其他功能,比如自带AD,DA,自带SPI,自带看门狗,自带大容量EEPROM等等;6、中断的种类更细更多,有20几个中断向量的比比皆是,定时器/计数器的功能,数量都更多。
简化电路,节省成本,降低功耗,提高系统的可靠性。
第2章2-1 MCS-51系列单片机内部有哪些主要的逻辑部件?答:一个8位CPU;一个片内振荡器及时钟电路;4K字节ROM程序存储器;128字节RAM数据存储器;两个16位定时器/计数器;可寻址64K外部数据存储器和64K外部程序存储器空间的控制电路;32条可编程的I/O线(四个8位并行I/O端口);一个可编程全双工串行口;具有五个中断源、两个优先级嵌套中断结构2-2 MCS-51设有4个8位端口(32条I/O线),实际应用中8位数据信息由哪一个端口传送?16位地址线怎样形成?P3口有何功能?答:实际应用中8位数据信息由P0口传送。
[单片机原理及应用课后答案]单片机原理及应用技术
[单片机原理及应用课后答案]单片机原理及应用技术篇一: 单片机原理及应用技术_课后答案章1 绪论1.第一台计算机的问世有何意义?答:第一台电子数字计算机ENIAC问世,标志着计算机时代的到来。
[)与现代的计算机相比,ENIAC有许多不足,但它的问世开创了计算机科学技术的新纪元,对人类的生产和生活方式产生了巨大的影响。
2.计算机由哪几部分组成?答:由运算器、控制器、存储器、输入设备和输出设备组成,运算器与控制器合称为CPU。
3.微型计算机由哪几部分构成?答:微型计算机由微处理器、存储器和I/O接口电路构成。
各部分通过地址总线、数据总线和控制总线相连。
4.微处理器与微型计算机有何区别?答:微处理器集成了运算器和控制器;而微型计算机包含微处理器、存储器和I/O接口电路等。
5.什么叫单片机?其主要特点有哪些?答:在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。
单片机主要特点有:控制性能和可靠性高;体积小、价格低、易于产品化;具有良好的性能价格比。
6.微型计算机有哪些应用形式?各适于什么场合?答:微型计算机有三种应用形式:多板机、单板机和单片机。
多板机,通常作为办公或家庭的事务处理及科学计算,属于通用计算机。
单板机,I/O设备简单,软件资源少,使用不方便。
早期主要用于微型计算机原理的教学及简单的测控系统,现在已很少使用。
单片机,单片机体积小、价格低、可靠性高,其非凡的嵌入式应用形态对于满足嵌入式应用需求具有独特的优势。
目前,单片机应用技术已经成为电子应用系统设计的最为常用技术手段。
7.当前单片机的主要产品有哪些?各有何特点?答:多年来的应用实践已经证明,80C51的系统结构合理、技术成熟。
因此,许多单片机芯片生产厂商倾力于提高80C51单片机产品的综合功能,从而形成了80C51的主流产品地位,近年来推出的与80C51兼容的主要产品有:? A TMEL公司融入Flash存储器技术推出的A T89系列单片机;? Philips公司推出的? 华邦公司推出的- 74 -? ADI公司推出的ADμC8xx系列高精度ADC单片机;? LG公司推出的GMS90/97系列低压高速单片机;? Maxim公司推出的DS89C420高速单片机;? Cygnal公司推出的C8051F系列高速SOC单片机等。
《单片机原理及应用》课后习题答案
《单片机原理及应用》课后习题答案第三章课后习题答案6.用指令实现下列数据传送:(1)R7内容传送到R4:MOV A,R7;MOV R4,A;(2)内部RAM20H单元送内部RAM40H;MOV 40H,20H(3)外部RAM20H单元内容送内部RAM30H: MOV R0,#20H;MOVX A,@R0;MOV 30H,A(4)ROM2000H单元内容送R2MOV DPTR,#2000HMOV A,#00HMOVC A,@A+DPTR;MOV R2,A(5)外部RAM3456H的内容送外部78HMOV DPTR,#3456HMOVX A,@DPTRMOV R0,#78HMOVX @R0,A(6)外部ROM2000H单元内容送外部RAM20H MOV DPTR,#2000HMOV A,#00HMOVC A,@A+DPTR;MOV R0,#20HMOVX @R0,A(7)外部RAM2040H单元内容与3040H内容交换MOV DPTR,#2040HMOVX A,@DPTRMOV R0,AMOV DPTR,#3040HMOVX A,@DPTRMOV R1,AMOV A,R0MOVX @DPTR,AMOV A,R1MOV DPTR,#2040HMOVX @DPTR,A(8)将片内数据存储器20H~23H单元内容传送到片外数据存储器3000H~3003HMOV A,20HMOV DPTR,#3000HMOVX @DPTR,AMOV A,21HMOV DPTR,#3001HMOVX @DPTR,AMOV A,22HMOV DPTR,#3002HMOVX @DPTR,AMOV A,23HMOV DPTR,#3003HMOVX @DPTR,AORG 0100HAJMP MAINMAIN: MOV R7,#04HMOV R0,#20HMOV DPTR,#3000HLOOP:MOV A,@R0 ;MOVX @DPTR,AINC R0 ;准备取下一个数INC DPTRDJNZ R7,LOOPEND7. 试用3种方法将累加器A中的无符号数乘2。
单片机原理及应用教程第版习题课后答案
单片机原理及应用教程第版习题课后答案The document was finally revised on 2021《单片机原理及应用程序》(第三版)习题参考答案第一章1. 为什么计算机要采用二进制数学习十六进制数的目的是什么在计算机中,由于所采用的电子逻辑器件仅能存储和识别两种状态的特点,计算机内部一切信息存储、处理和传送均采用二进制数的形式。
可以说,二进制数是计算机硬件能直接识别并进行处理的惟一形式。
十六进制数可以简化表示二进制数。
2.(1) 01111001 79H (2) (3)(5)01100001 61H (6) 00110001 31H3.(1) 0B3H (2)80H (3) (4)4.(1)01000001B 655.(6.00100101B 00110111BCD 25H7. 137 119 898.什么是总线总线主要有哪几部分组成各部分的作用是什么总线是连接计算机各部件之间的一组公共的信号线。
一般情况下,可分为系统总线和外总线。
系统总线应包括:地址总线(AB)控制总线(CB)数据总线(DB)地址总线(AB):CPU根据指令的功能需要访问某一存储器单元或外部设备时,其地址信息由地址总线输出,然后经地址译码单元处理。
地址总线为16位时,可寻址范围为216=64K,地址总线的位数决定了所寻址存储器容量或外设数量的范围。
在任一时刻,地址总线上的地址信息是惟一对应某一存储单元或外部设备。
控制总线(CB):由CPU产生的控制信号是通过控制总线向存储器或外部设备发出控制命令的,以使在传送信息时协调一致的工作。
CPU还可以接收由外部设备发来的中断请求信号和状态信号,所以控制总线可以是输入、输出或双向的。
数据总线(DB):CPU是通过数据总线与存储单元或外部设备交换数据信息的,故数据总线应为双向总线。
在CPU进行读操作时,存储单元或外设的数据信息通过数据总线传送给CPU;在CPU进行写操作时,CPU把数据通过数据总线传送给存储单元或外设9.什么是接口电路 CPU与接口电路连接一般应具有哪些信号线外部设备与接口电路连接一般应具有哪些信号线CPU通过接口电路与外部输入、输出设备交换信息,一般情况下,外部设备种类、数量较多,而且各种参量(如运行速度、数据格式及物理量)也不尽相同。
单片机原理及应用 课后答案
《单片机原理及应用》思考题与习题参考答案绪论0.1解:单片微型计算机(Single-Chip Microcomputer),简称单片机。
就是将微处理器(CPU)、存储器(存放程序或数据的ROM和RAM)、总线、定时器/计数器、输入/输出接口(I/O口)和其他多种功能器件集成在一块芯片上的微型计算机。
单片机的主要特点有:(1)可靠性高(2)便于扩展(3)控制功能强(4)低电压、低功耗(5)片内存储容量较小,除此之外,单片机还具有集成度高、体积小、性价比高、应用广泛、易于产品化等特点0.2 解:当前单片机的主要产品有:Intel的8051系列、Motorola的M68HC系列、Philips(飞利浦)的80C51系列、台湾义隆公司(EMC)EM78系列单片机、美国Microchip公司的PIC 单片机系列、Atmel公司的A T90系列单片机Ubicom公司的Scenix单片机、日本爱普生科技公司的Epson单片机、Zilog公司的Z86系列、美国国家半导体公司NSCOP8单片机、台湾Winbond(华邦)的W78系列等。
MCS-51为主流产品。
MSP430的功能较强。
是一种特低功耗的Flash微控制器。
主要用于三表及超低功耗场合。
EM78系列单片机采用高速CMOS工艺制造,低功耗设计为低功耗产品,价格较低。
具有三个中断源、R-OPTION功能、I/O唤醒功能、多功能I/O口等。
具有优越的数据处理性能,采用RISC结构设计。
Microship单片机是市场份额增长较快的单片机。
它的主要产品是PIC系列8位单片机。
CPU采用RISC结构,运行速度快,价格低适于用量大、档次低、价格敏感的产品。
Motorola是世界上最大的单片机生产厂家之一,品种全、选择余地大、新产品多。
其特点是噪声低,抗干扰能力强,比较适合于工控领域及恶劣的环境。
A VR是增强RISC内载Flash的单片机,单片机内部32个寄存器全部与ALU直接连接,突破瓶颈限制,每1MHz可实现1MIPS的处理能力,为高速、低功耗产品。
《单片机原理及应用》各章课后习题参考答案
第1章单片机概述参考答案1.答:微控制器,嵌入式控制器2.答:CPU、存储器、I/O口、总线3.答:C4.答:B5.答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。
而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。
嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。
目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。
嵌入式微处理器相当于通用计算机中的CPU。
与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。
而嵌入式微处理器仅仅相当于单片机中的中央处理器。
为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。
6.答:MCS-51系列单片机的基本型芯片分别:8031、8051和8071。
它们的差别是在片内程序存储器上。
8031无片内程序存储器、8051片内有4K字节的程序存储器ROM,而8751片内有集成有4K 字节的程序存储器EPROM。
7.答:因为MCS-51系列单片机中的“MCS”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。
8.答:相当于MCS-51系列中的87C51,只不过是AT89S51芯片内的4K字节Flash存储器取代了87C51片内的4K字节的EPROM。
9.单片机体积小、价格低且易于掌握和普及,很容易嵌入到各种通用目的的系统中,实现各种方式的检测和控制。
单片机在嵌入式处理器市场占有率最高,最大特点是价格低,体积小。
DSP是一种非常擅长于高速实现各种数字信号处理运算(如数字滤波、FFT、频谱分析等)的嵌入式处理器。
由于对其硬件结构和指令进行了特殊设计,使其能够高速完成各种复杂的数字信号处理算法。
单片机原理及应用技术(第3版)习题答案
单片机原理及应用技术(第3版)+习题答案章1 绪论 1.第一台计算机的问世有何意义答第一台电子数字计算机ENIAC问世标志着计算机时代的到来与现代的计算机相比ENIAC有许多不足但它的问世开创了计算机科学技术的新纪元对人类的生产和生活方式产生了巨大的影响2.计算机由哪几部分组成答由运算器控制器存储器输入设备和输出设备组成运算器与控制器合称为CPU3.微型计算机由哪几部分构成答微型计算机由微处理器存储器和IO接口电路构成各部分通过地址总线AB 数据总线DB和控制总线CB相连4.微处理器与微型计算机有何区别答微处理器集成了运算器和控制器即CPU而微型计算机包含微处理器存储器和IO接口电路等5.什么叫单片机其主要特点有哪些答在一片集成电路芯片上集成微处理器存储器IO接口电路从而构成了单芯片微型计算机即单片机单片机主要特点有控制性能和可靠性高体积小价格低易于产品化具有良好的性能价格比6.微型计算机有哪些应用形式各适于什么场合答微型计算机有三种应用形式多板机系统机单板机和单片机多板机通常作为办公或家庭的事务处理及科学计算属于通用计算机单板机IO设备简单软件资源少使用不方便早期主要用于微型计算机原理的教学及简单的测控系统现在已很少使用单片机单片机体积小价格低可靠性高其非凡的嵌入式应用形态对于满足嵌入式应用需求具有独特的优势目前单片机应用技术已经成为电子应用系统设计的最为常用技术手段7.当前单片机的主要产品有哪些各有何特点答多年来的应用实践已经证明80C51的系统结构合理技术成熟因此许多单片机芯片生产厂商倾力于提高80C51单片机产品的综合功能从而形成了80C51的主流产品地位近年来推出的与80C51兼容的主要产品有ATMEL公司融入Flash存储器技术推出的AT89系列单片机Philips公司推出的80C5180C552系列高性能单片机华邦公司推出的W78C51W77C51系列高速低价单片机ADI公司推出的ADμC8xx系列高精度ADC单片机LG公司推出的GMS9097系列低压高速单片机im公司推出的DS89C420高速50MIPS单片机Cygnal公司推出的C8051F系列高速SOC单片机等 8.简述单片机的开发过程答系统需求分析硬件方案设计软件编程仿真调试实际运行9.单片机应用系统开发方法有哪些新方法答在系统编程ISP技术在应用编程IAP技术章 2 80C51的结构和原理1.80C51单片机在功能上工艺上程序存储器的配置上有哪些种类答功能上分为基本型和增强型工艺上分为HMOS工艺和CHMOS工艺在片内程序存储器的配置上有掩膜ROMEPROM和Flash无片内程序存储器形式2. 80C51单片机的存储器的组织采用何种结构存储器地址空间如何划分各地址空间的地址范围和容量如何在使用上有何特点答采用哈佛结构在物理上设计成程序存储器和数据存储器两个独立的空间80C51基本型单片机片内程序存储器为4KB地址范围是0000H-0FFFH用于存放程序或常数片内数据存储器为128字节RAM地址范围是00H-7FH用于存放运算的中间结果暂存数据和数据缓冲另外在80H-FFH还配有21个SFR3.80C51单片机的P0P3口在结构上有何不同在使用上有何特点答作为通用IO口时P0P1P2和P3都是准双向口P0可以作为地址数据总线此时是一个真正的双向口P2口可以作为地址线的高8位P3口是双功能口每条口线还具有不同的第二功能另外P0口的驱动能力为8个TTL负载而其它口仅可驱动4个TTL负载4.如果80C51单片机晶振频率分别为6 MHz110592 MHz12MHz时机器周期分别为多少答机器周期分别为2μs1085μs1μs5.80C51单片机复位后的状态如何复位方法有几种答复位后PC内容为0000HP0口~P3口内容为FFHSP内容为07HSBUF内容不定IPIE和PCON的有效位为0其余的特殊功能寄存器的状态均为00H复位方法一种是上电复位另一种是上电与按键均有效的复位6.80C51单片机的片内片外存储器如何选择答80C51的引脚为访问片内片外程序存储器的选择端访问片内片外数据存储器需要采用不同的指令加以区分7.80C51单片机的PSW寄存器各位标志的意义如何答CY进位借位标志有进位借位时 CY 1否则CY 0AC辅助进位借位标志高半字节与低半字节间的进位或借位F0用户标志位由用户自己定义RS1RS0当前工作寄存器组选择位OV溢出标志位有溢出时OV 1否则OV 0P奇偶标志位存于ACC中的运算结果有奇数个1时P 1否则P 08. 80C51单片机的当前工作寄存器组如何选择答当前工作寄存器组的选择由特殊功能寄存器中的程序状态字寄存器PSW的RS1RS0 来决定9.80C51单片机的控制总线信号有哪些各信号的作用如何答RSTVPD复位信号输入引脚备用电源输入引脚ALE地址锁存允许信号输出引脚编程脉冲输入引脚VPP内外存储器选择引脚片内EPROM或FlashROM编程电压输入引脚外部程序存储器选通信号输出引脚10.80C51单片机的程序存储器低端的几个特殊单元的用途如何答0000H单片机复位入口地址0003H外部中断0的中断服务程序入口地址000BH定时计数器0溢出中断服务程序入口地址0013H外部中断1的中断服务程序入口地址001BH定时计数器1溢出中断服务程序入口地址0023H串行口的中断服务程序入口地址章3 80C51的指令系统 1.80C51系列单片机的指令系统有何特点答执行时间短1个机器周期指令有64条2个机器周期指令有45条而4个机器周期指令仅有2条即乘法和除法指令指令编码字节少单字节的指令有49条双字节的指令有45条三字节的指令仅有17条位操作指令丰富这是80C51单片机面向控制特点的重要保证2.80C51单片机有哪几种寻址方式各寻址方式所对应的寄存器或存储器空间如何答80C51单片机的寻址方式有七种即寄存器寻址直接寻址寄存器间接寻址立即寻址基址寄存器加变址寄存器变址寻址相对寻址和位寻址这些寻址方式所对应的寄存器和存储空间如下表所示序号寻址方式寄存器或存储空间 1 寄存器寻址寄存器R0R7AABDPTR和C布尔累加器 2 直接寻址片内RAM低128字节SFR3 寄存器间接寻址片内RAMR0R1SP片外RAMR0R1DPTR 4 立即寻址ROM 5 变址寻址ROMA+DPTRA+PC 6 相对寻址ROMPC当前值的+127~-128字节7 位寻址可寻址位内部RAM20H2FH单元的位和部分SFR的位3.访问特殊功能寄存器SFR可以采用哪些寻址方式答直接寻址和位寻址方式4.访问内部RAM单元可以采用哪些寻址方式答直接寻址寄存器间接寻址和位寻址方式5.访问外部RAM单元可以采用哪些寻址方式答寄存器间接寻址6.访问外部程序存储器可以采用哪些寻址方式答立即寻址变址寻址和相对寻址方式7.为什么说布尔处理功能是80C51单片机的重要特点答单片机指令系统中的布尔指令集存储器中的位地址空间与CPU中的位操作构成了片内的布尔功能系统它可对位bit变量进行布尔处理如置位清零求补测试转移及逻辑与或等操作在实现位操作时借用了程序状态标志器PSW中的进位标志Cy作为位操作的累加器8.对于80C52单片机内部RAM还存在高128字节应采用何种方式访问答寄存器间接寻址方式9.试根据指令编码表写出下列指令的机器码1MOV A88H----------------74H 88H2MOV R350H----------------ABH50H3MOV P155H----------75H90H55H4ADD AR15SETB 12H10.完成某种操作可以采用几条指令构成的指令序列实现试写出完成以下每种操作的指令序列1将R0的内容传送到R12内部RAM单元60H的内容传送到寄存器R23外部RAM单元1000H的内容传送到内部RAM单元60H4外部RAM单元1000H的内容传送到寄存器R25外部RAM单元1000H的内容传送到外部RAM单元2000H答1MOV AR0MOV R1A2MOV R260H3MOV DPTR1000HMOVX ADPTRMOV 60HA4MOV DPTR1000HMOVX ADPTRMOV R2A5MOV DPTR1000HMOVX ADPTRMOV DPTR2000HMOVX DPTR A11.若R1 30HA 40H30H 60H40H 08H试分析执行下列程序段后上述各单元内容的变化MOV AR1MOV R140HMOV 40HAMOV R17FH答R1 7FHA 60H30H 08H40H 60H12.若A E8HR0 40HR1 20HR4 3AH40H 2CH20H 0FH试写出下列各指令独立执行后有关寄存器和存储单元的内容若该指令影响标志位试指出CYAC和OV的值 1MOV AR02ANL 40H0FH3ADD AR44SWAP A5DEC R16XCHD AR1答1A 2CH240H 0CH3A 22HCY 1AC 1OV 04A 8EH520H 0EHP 16A EFH20 08H13.若50H 40H试写出执行以下程序段后累加器A寄存器R0及内部RAM的40H41H42H单元中的内容各为多少MOV A50HMOV R0AMOV A00HMOV R0AMOV A3BHMOV 41HAMOV 42H41H答A 3BHR0 40H40H 00H41H 3BH42H 3BH14.试用位操作指令实现下列逻辑操作要求不得改变未涉及的位的内容1使ACC0置位2清除累加器高4位3清除ACC3ACC4ACC5ACC6答1SETB ACC02ANL A0FH3ANL A87H15.试编写程序将内部RAM的20H21H22H三个连续单元的内容依次存入2FH2EH和2DH单元答MOV 2FH20HMOV 2EH21HMOV 2DH22H16.试编写程序完成两个16位数的减法7F4DH-2B4EH结果存入内部RAM 的30H和31H单元30H单元存差的高8位31H单元存差的低8位答CLR CYMOV 30H7FHMOV 31H4DHMOV R0 31HMOV AR0SUBB A 4EMOV R0A 保存低字节相减结果DEC R0MOV A R0SUBB A2BHMOV R0A 保存高字节相减结果 17.试编写程序将R1中的低4位数与R2中的高4位数合并成一个8位数并将其存放在R1中答MOV AR2ANL A0F0HORL R1A18.试编写程序将内部RAM的20H21H单元的两个无符号数相乘结果存放在R2R3中R2中存放高8位R3中存放低8位答MOV A20HMOV B21HMUL ABMOV R3AMOV R2B19.若CY 1P1 10100011BP3 01101100B试指出执行下列程序段后CYP1口及P3口内容的变化情况MOV P13CMOV P14CMOV CP16MOV P36CMOV CP10MOV P34C答CY 1 P1 10111011B P3 00111100B 章 4 80C51的汇编语言程序设计1.80C51单片机汇编语言有何特点答汇编语言结构紧凑灵活汇编成的目标程序效率高具有占存储空间少运行速度快实时性强等优点它是面向机器的语言对于单片机硬件的操作直接方便有利于初学者对单片机结构的认知但它与高级语言相比移植性不好编程复杂对编程人员的基础要求高2.利用80C51单片机汇编语言进行程序设计的步骤如何答一任务分析首先要对单片机应用系统的设计目标进行深入分析明确系统设计任务功能要求和技术指标然后对系统的运行环境进行调研这是应用系统程序设计的基础和条件二算法设计经过任务分析和环境调研后已经明确的功能要求和技术指标可以用数学方法或模型来描述进而把一个实际的系统要求转化成由计算机进行处理的算法并对各种算法进行分析比较并进行合理的优化三流程描述程序的总体构建先要确定程序结构和数据形式资源分配和参数计算等然后根据程序运行的过程规划程序执行的逻辑顺序用图形符号将程序流程绘制在平面图上应用程序的功能通常可以分为若干部分用流程图将具有一定功能的各部分有机地联系起来流程图可以分为总流程图和局部流程图总流程图侧重反映程序的逻辑结构和各程序模块之间的相互关系局部流程图反映程序模块的具体实施细节3.常用的程序结构有哪几种特点如何答顺序程序无分支无循环结构的程序其执行流程是依指令在存储器中的存放顺序进行的分支程序可以改变程序的执行顺序循环程序按某种控制规律重复执行的程序控制一部分指令重复执行若干次以便用简短的程序完成大量的处理任务4.子程序调用时参数的传递方法有哪几种答利用累加器或寄存器利用存储器利用堆栈5.什么是伪指令常用的伪指令功能如何答伪指令是汇编程序能够识别并对汇编过程进行某种控制的汇编命令常用的伪指令包括ORG功能是向汇编程序说明下面紧接的程序段或数据段存放的起始地址END功能是结束汇编DB功能是从标号指定的地址单元开始在程序存储器中定义字节数据DW功能是从标号指定的地址单元开始在程序存储器中定义字数据空间EQU功能是将表达式的值或特定的某个汇编符号定义为一个指定的符号名BIT功能是将位地址赋给指定的符号名6.设被加数存放在内部RAM的20H21H单元加数存放在22H23H单元若要求和存放在24H25H中试编写出16位无符号数相加的程序采用大端模式存储答程序如下ORG 0000HMOV R0#21HMOV R1#23HMOV AR0ADD AR1MOV 25HADEC R0DEC R1MOV AR0ADDC AR1MOV 24HASJMPEND7.编写程序把外部RAM中1000H101FH的内容传送到内部RAM的30H4FH中答ORG 0000HMOV DPTR1000HMOV R030HMOV R732LOOPMOVX ADPTRMOV R0AINC R0INC DPTRDJNZ R7LOOPRET8.编写程序实现双字节无符号数加法运算要求 R0R1R6R7→60H61H 答ORG 0000HMOV AR1ADD AR7MOV 61HAMOV AR0ADDC AR6MOV 60HASJMPEND9.若80C51的晶振频率为6MHz试计算延时子程序的延时时间DELAYMOV R70F6HLPMOV R60FAHDJNZ R6DJNZ R7LPRET答延时时间 2μs [1 122502246 2]2 0247486秒含调用指令2个机器周期10.在内部RAM 的30H37H单元存有一组单字节无符号数要求找出最大数存入BIG 单元试编写程序实现答ORG 0000HBIG DATA 2FHONE DATA 2AHTWO DATA 2BH STARTMOV R77 比较次数MOV R030HLOOPMOV AR0MOV ONEAINC R0MOV TWOR0CLR CSUBB AR0JC NEXT ONE小TWO大继续比下一对数MOV R0ONE ONE大放后面交换DEC R0MOV R0TWO TWO小放前面INC R0NEXTDJNZ R7LOOPSJMPEND11.编写程序把累加器A中的二进制数变换成3位BCD码并将百十个位数分别存放在内部RAM的50H51H52H中答单字节二进制数转换为压缩的BCD码仅需要2个字节在将压缩的BCD码拆分存于3个单元org 0MOV 52H0MOV 51H0MOV 50H0MOV A0FDhLCALL DCDTHSJMP DCDTHMOV R78MOV R0A 暂存于R0LOOPCLR CMOV AR0RLC AMOV R0AMOV R151H MOV AR1ADDC AR1DA ADEC R1MOV AR1ADDC AR1DA AMOV R1ADJNZ R7LOOPINC R1 50H已是结果R1指向51H51H单元需拆分MOV A00HXCHD AR1MOV 52HAMOV AR1SWAP AMOV R1ARETEND12.编写子程序将R1中的2个十六进制数转换为ASCII码后存放在R3和R4中答ORG 0MOV R15BHMOV AR1ANL A0F0HSWAP AACALL ASCIIMOV R3AMOV AR1ANL A 0FHACALL ASCIIMOV R4 ASJMPASCIIPUSH ACCCLR CSUBB A 0AHPOP ACCJC LOOPADD A 07HLOOP ADD A 30HRETEND13.编写程序求内部RAM中50H59H十个单元内容的平均值并存放在5AH单元答ORG 0000HMOV R710MOV R050HMOV B10CLR CCLR ALOOPADDC AR0INC R0DJNZ R7LOOPDIV ABMOV 5AHASJMPEND14.如图410所示编制程序实现上电后显示P有键按下时显示相应的键号07答实现程序如下TEMP EQU 30HORG 0000HJMP STARTORG 0100HSTARTMOV SP5FHMOV P08CH 正序显示"P"MOV P30FFH 输入方式CLR CYNOKEYMOV AP3CPL AJZ NOKEY 无键按下MOV TEMPP3 有键按下CALL D10msMOV AP3CJNE ATEMPNOKEY 去抖动MOV R20 键号计数器复位 MOV ATEMPLPRRC AJNC DONEINC R2SJMP LPDONEMOV AR2MOV DPTRCODE_P0MOVC AADPTRMOV P0AJMP NOKEYD10msMOV R510 10MSD1msMOV R4249DLNOPNOPDJNZ R4DLDJNZ R5D1msRETCODE_P0DB 0C0H0F9H0A4H0B0H99H92H82H0F8HDB 80H90H88H83H0C6H0A1H86H8EHEND章5 80C51的中断系统及定时计数器 180C51有几个中断源各中断标志是如何产生的又是如何复位的CPU响应各中断时其中断入口地址是多少答5个中断源分别为外中断和T0和T1溢出中断串口中断电平方式触发的外中断标志与引脚信号一致边沿方式触发的外中断响应中断后由硬件自动复位T0和T1CPU响应中断时由硬件自动复位RI和TI由硬件置位必须由软件复位另外所有能产生中断的标志位均可由软件置位或复位各中断入口地址―0003HT0000BH0013HT1001BHRI和TI0023H2某系统有三个外部中断源123当某一中断源变低电平时便要求CPU处理它们的优先处理次序由高到低为321处理程序的入口地址分别为2000H2100H2200H 试编写主程序及中断服务程序转至相应的入口即可答将3个中断信号经电阻线或接LJMP MAINORG 00013HLJMP ZDFZORG 0040HMAINSETB EASETB EX1SJMP 0RG 0200H ZDFZPUSH PSWPUSH ACCJB P10DV0JB P11DV1JB P12DV2INRETPOP ACCPOP PSWRETIORG 2000HDV0------------JMP INRETORG 2100HDV1------------JMP INRETDV2------------JMP INRET3外部中断源有电平触发和边沿触发两种触发方式这两种触发方式所产生的中断过程有何不同怎样设定答当IT0 0时为电平触发方式电平触发方式时CPU在每个机器周期的S5P2采样引脚电平当采样到低电平时置IE0=1向CPU请求中断采样到高电平时将IE0清0在电平触发方式下CPU响应中断时不能自动清除IE0标志电平触发方式时外部中断源的有效低电平必须保持到请求获得响应时为止不然就会漏掉在中断服务结束之前中断源的有效的低电平必须撤除否则中断返回之后将再次产生中断该方式适合于外部中断输入为低电平且在中断服务程序中能清除外部中断请求源的情况当IT0 1时为边沿触发方式边沿触发方式时CPU在每个机器周期的S5P2采样引脚电平如果在连续的两个机器周期检测到引脚由高电平变为低电平即第一个周期采样到 1第二个周期采样到 0则置IE0=1产生中断请求在边沿触发方式下CPU响应中断时能由硬件自动清除IE0标志边沿触发方式时在相继两次采样中先采样到外部中断输入为高电平下一个周期采样到为低电平则在IE0或IE1中将锁存一个逻辑1若CPU暂时不能响应中断申请标志也不会丢失直到CPU响应此中断时才清0另外为了保证下降沿能够被可靠地采样到和引脚上的负脉冲宽度至少要保持一个机器周期若晶振频率为12MHz为1微秒边沿触发方式适合于以负脉冲形式输入的外部中断请求4定时计数器工作于定时和计数方式时有何异同点答定时计数器实质是加1计数器不同点设置为定时器模式时加1计数器是对内部机器周期计数1个机器周期等于12个振荡周期即计数频率为晶振频率的112计数值乘以机器周期就是定时时间设置为计数器模式时外部事件计数脉冲由T0或T1引脚输入到计数器在每个机器周期的S5P2期间采样T0T1引脚电平当某周期采样到一高电平输入而下一周期又采样到一低电平时则计数器加1更新的计数值在下一个机器周期的S3P1期间装入计数器相同点它们的工作原理相同它们都有4种工作方式由TMOD中的M1M0设定即方式013位计数器方式116位计数器方式2具有自动重装初值功能的8位计数器方式3T0分为两个独立的8位计数器T1停止工作 5定时计数器的4种工作方式各有何特点答方式0位13位计数器由TL0的低5位高3位未用和TH0的8位组成TL0的低5位溢出时向TH0进位TH0溢出时置位TCON中的TF0标志向CPU发出中断请求计数初值计算的公式为X=213-N方式1的计数位数是16位由TL0作为低8位TH0作为高8位组成了16位加1计数器计数个数与计数初值的关系为X=216-N方式2为自动重装初值的8位计数方式TH0为8位初值寄存器当TL0计满溢出时由硬件使TF0置1向CPU发出中断请求并将TH0中的计数初值自动送入TL0TL0从初值重新进行加1计数周而复始直至TR0 0才会停止计数个数与计数初值的关系为 X=28-N方式3只适用于定时计数器T0定时器T1处于方式3时相当于TR1=0停止计数方式3时T0分成为两个独立的8位计数器TL0和TH0TL0使用T0的所有控制位当TL0计数溢出时由硬件使TF0置1向CPU发出中断请求而TH0固定为定时方式不能进行外部计数并且借用了T1的控制位TR1TF1因此TH0的启停受TR1控制TH0的溢出将置位TF16要求定时计数器的运行控制完全由TR1TR0确定和完全由高低电平控制时其初始化编程应作何处理答TMOD中GATE的值不同完全由TR1TR0确定时GATE为0完全由高低电平控制时GATE为17当定时计数器T0用作方式3时定时计数器T1可以工作在何种方式下如何控制T1的开启和关闭答T0用作方式3时T1可以工作在方式01和2T1的开启由TR1控制即TR1=1时T1开始工作TR1=0时或者定时计数器工作在方式3时T1停止工作8利用定时计数器T0从P10输出周期为1s脉宽为20ms的正脉冲信号晶振频率为12MHz试设计程序答采用定时20ms然后再计数149次的方法实现aT0工作在定时方式1时控制字TMOD配置M1M0 01GATE 0C 0可取方式控制字为01Hb计算计数初值X晶振为12 MHz所以机器周期Tcy为1N=t Tcy =20×10-31×10-6=20000X=216-N=65536-20000=45536=4E20H即应将4EH送入TH1中20H送入TL1中c实现程序如下ORG 0000HAJMP MAIN 跳转到主程序 ORG 0030H MAINMOV TMOD01H 设T1工作于方式2MOV TH0 4EH 装入循环计数初值MOV TL020H 首次计数值LP0SETB P10ACALL NT0CLR P10MOV R749 计数49次LP1ACALL NT0DJNZ R7LP1AJMP LP0NT0MOV TH0 4EHMOV TL020HSETB TR0JNB TF0CLR TR0CLR TF0RETEND9要求从P11引脚输出1000Hz方波晶振频率为12MHz试设计程序答采用T0实现aT0工作在定时方式1时控制字TMOD配置M1M0 01GATE 0C 0可取方式控制字为01Hb计算计数初值X晶振为12 MHz所以机器周期Tcy为111000 1×10-3N=t Tcy =05×10-31×10-6=500X=216-N=65536-500=65036=FE0CH即应将FEH送入TH0中0CH送入TL0中c实现程序如下ORG 0000HAJMP MAIN 跳转到主程序ORG 000BH T0的中断入口地址LJMP DVT0ORG 0030HMAINMOV TMOD01H 设T0工作于方式2MOV TH0 0FEH 装入循环计数初值MOV TL00CH 首次计数值SETB ET0 T0开中断SETB EA CPU开中断SETB TR0 启动T0SJMP 等待中断DVT0CPL P11MOV TH0 0FEHMOV TL0 0CHSETB TR0RETIEND10试用定时计数器T1对外部事件计数要求每计数100就将T1改成定时方式控制P17输出一个脉宽为10ms的正脉冲然后又转为计数方式如此反复循环设晶振频率为12MHz答aT1工作在计数方式2时控制字TMOD配置M1M0 10GATE 0C 1可取方式控制字为60HT1工作在定时方式1时控制字TMOD配置M1M0 01GATE 0C 0可取方式控制字为10Hb计算初值X定时10ms时晶振为12 MHz所以机器周期Tcy为1N=t Tcy =10×10-31×10-6=10000X=216-N=65536-10000=55536=D8F0H即应将D8H送入TH1中F0H送入TL1中计数100时N=100X=28-N=256-100=156=9CHc实现程序如下ORG 0000HAJMP MAIN 跳转到主程序ORG 001BH T1的中断入口地址LJMP DVT1ORG 0030HMAINMOV TMOD60H T1工作于计数方式2MOV TH19CH 装入计数初值MOV TL19CHCLR P17SETB ET1 T1开中断SETB EA CPU开中断SETB TR1 启动T1SJMP 等待中断 DVT1SETB P17CLR ET1CLR TR1MOV TMOD10H T1工作于定时方式1MOV TH10D8H 装初值MOV TL10F0HSETB TR1JNB TF1 查询等待10msCLR TF1CLR TR1CLR P17MOV TMOD60H T1工作于计数方式2MOV TH19CH 装初值MOV TL19CHSETB ET1 T1开中断SETB TR1 启动T1RETIEND 11利用定时计数器T0产生定时时钟由P1口控制8个指示灯编一个程序使8个指示灯依次闪动闪动频率为1次秒即亮1秒后熄灭并点亮下一个-----答采用定时20ms计数50次实现1秒定时编制1秒延时子程序由主程序调用aT0工作在定时方式1时控制字TMOD配置M1M0 01GATE 0C 0可取方式控制字为01Hb计算计数初值X晶振为12 MHz所以机器周期Tcy为1N=t Tcy =20×10-31×10-6=20000X=216-N=65536-20000=45536=4E20H即应将4EH送入TH1中20H送入TL1中c实现程序如下ORG 0000HAJMP MAIN 跳转到主程序ORG 0030HMAINCLR CYMOV A01HLP0MOV P1ACALL D1SECRL AAJMP LP0 D1SECMOV R750 计数50次MOV TMOD01HDLMOV TH04EHMOV TL020HSETB TR0JNB TF0CLR TR0CLR TF0DJNZ R7DLRETEND - 95 -。
单片机原理及应用技术苏家建曹柏荣 汪志锋 课后习题参考答案
单片机原理及应用技术苏家建课后习题参考答案第三章MCS-51指令系统3-1MCS-51指令系统有哪几种寻址方式?按功能分类有哪几种指令?3-2设A=0FH,R0=30H,片内RAM的(30H)=0AH,(31H)=0BH,(32H)=0CH,下列程序段运行后的结果?MOVA,@R0;A=0AHMOV@R0,32H;(30H)=0CHMOV32H,A;(32H)=0AHMOVR0,#31H;R0=31HMOVA,@R0;A=(31H)=0BH3-3(1)R0的内容传送到R1MOVA,R0MOVR1,A(2)内部RAM20H单元的内容传送到AMOVA,20H(3)外部RAM30H单元的内容传送到R0MOVR1,#30HMOVXA,@R1MOVR0,A(4)外部RAM30H单元的内容传送到内部RAM20H单元MOVR1,#30HMOVXA,@R1MOV20H,A(5)外部RAM1000H单元的内容传送到内部RAM20H单元MOVDPTR,#1000HMOVXA,@DPTRMOV20H,A(6)程序存储器ROM2000H单元的内容传送到R1MOVDPTR,#2000HCLRAMOVCA,@A+DPTRMOVR1,A(7)RAM2000H单元的内容传送到内部RAM20H单元MOVDPTR,#2000HMOVXA,@DPTRMOV20H,A(8)RAM2000H单元的内容传送到外部RAM30H单元MOVDPTR,#2000HMOVXA,@DPTRMOVX@R0,A(9)RAM2000H单元的内容传送到外部RAM1000H单元MOVDPTR,#2000HMOVXA,@DPTRMOVDPTR,#1000HMOVX@DPTR,A3-4设内部RAM30H=5AH,5AH=40H,40H=00H,P1=7FH,下面程序执行后的结果如何?MOVR0,#30H;R0=30HMOVA,@R0;A=(30H)=5AHMOVR1,A;R1=5AHMOV@R1,P1;(5AH)=7FHMOVA,P1;A=7FHMOV40H,#20H;(40H)=20HMOV30H,40H;(30H)=00H3-5编程,将内部RAM20H-2FH共16个连续单元清零ORG0100HMOVR0,#20HMOVR2,#16LOOP: MOV@R0,#00HINCR0DJNZR2,LOOPEND3-6编程,求出内部RAM20H单元中的数据含“1”的个数,并将结果存入21H单元中。
(完整版)单片机原理及应用习题答案
(完整版)单⽚机原理及应⽤习题答案思考与练习题11.1单项选择题(1)单⽚机⼜称为单⽚微计算机,最初的英⽂缩写是( D )A.MCPB.CPUC.DPJD.SCM(2)Intel公司的MCS-51系列单⽚机是( C )的单⽚机。
A.1位B.4位C.8位D.16位(3)单⽚机的特点⾥没有包括在内的是( C )A.集成度⾼B.功耗低C.密封性强D.性价⽐⾼(4)单⽚机的发展趋势中没有包括的是( B )A.⾼性能B.⾼价格C.低功耗D.⾼性价⽐(5)⼗进制数56的⼆进制数是( A )A.00111000BB.01011100BC.11000111BD.01010000B(6)⼗六进制数93的⼆进制数是( A )A.10010011BB.00100011BC.11000011BD.01110011B(7)⼆进制数11000011的⼗六进制数是( B )A. B3HD.E3H(8)⼆进制数11001011的⼗进制⽆符号数是( B )A. 213B.203C.223D.233(9)⼆进制数11001011的⼗进制有符号数是( B )A. 73B.-75C.-93D.75(10)⼗进制数29的8421BCD压缩码是( A )A.00101001BB.10101001BC.11100001BD.10011100B(11)⼗进制数-36在8位微机中的反码和补码是( D )A.00100100B、11011100BB.00100100B、11011011BC.10100100B、11011011BD.11011011B、11011100B(12)⼗进制数+27在8位微机中的反码和补码分别是( C )A.00011011B、11100100BB.11100100B、11100101BC.00011011B、00011011BD.00011011B、11100101B(13)字符9的ASCII码是( D )A.0011001BB.0101001BC.1001001BD.0111001B(14)ASCII码1111111B的对应字符是( C )A. SPACED.{(15)或逻辑的表达式是( B )A.A?B=FB. A+B=FC. A⊕B=FD.(A?B)=F(16)异或逻辑的表达式是( C )A.A?B=FB. A+B=FC. A⊕B=FD.(A?B)=F(17)⼆进制数10101010B与00000000B的“与”、“或”和“异或”结果是( B )A.10101010B、10101010B、00000000BB.00000000B、10101010B、10101010BC.00000000B、10101010B、00000000BD.10101010B、00000000B、10101010B (18)⼆进制数11101110B与01110111B的“与”、“或”和“异或”结果是( D )A.01100110B、10011001B、11111111BB.11111111B、10011001B、01100110BC.01100110B、01110111B、10011001BD.01100110B、11111111B、10011001B(19)下列集成门电路中具有与门功能的是( D )A.74LS32B.74LS06C.74LS10D.74LS08(20)列集成门电路中具有⾮门功能的是( B )A.74LS32B.74LS06C.74LS10D.74LS08(21)Proteus软件由以下两个设计平台组成( C )A.ISIS和PPTB.ARES和CADC.ISIS和ARESD.ISIS和CAD(22)ISIS模块的主要功能是( A )A.电路原理图设计与仿真 B. ⾼级布线和编辑C. 图像处理D.C51源程序调试(23)ARES模块的主要功能是( B )A.电路原理图设计与仿真 B. ⾼级布线和编辑C. 图像处理&D.C51源程序调试(24)家⽤电器如冰箱、空调、洗⾐机中使⽤的单⽚机主要是利⽤了它的( D )A.⾼速运算 B. 海量存储 C.远程通信 D. 测量控制1.2问答思考题(1)什么是单⽚机?单⽚机与通⽤微机相⽐有何特点?单⽚机是在⼀块半导体硅⽚上集成了计算机基本功能部件的微型计算机。
单片机应用技术课后习题参考答案
1习题1答案1.2 填空题(1)单片级应用系统是由硬件系统、软件系统组成的(2)除了单片机和电源外,单片机最小系统包括时钟电路、复位电路(3)除了电源和电线引脚外,1、2、、EA引脚信号必须连接相应电路(4) 51系列单片机的存储器主要有4个物理存储空间,即片内数据存储器、片内程序存储器、片外数据存储器、片外程序存储器(5)51系列单片机的1和2引脚是时钟电路(6)51系列单片机的应用程序一般存放在程序存储器(7)片内低128单元,按其用途划分为工作寄存器组、位寻址区、用户区(8)但振荡脉冲频率为12时,一个机器周期为1,当振荡脉冲频率为6时,一个机器周期为2 (9)51系列单片机的复位电路有两种,即上电复位电路、按键复位电路(10)输入单片机的复位信号需延续2个机器周期以上的高电平即为有效。
1.3(4)什么是机器周期?机器周期和晶振频率有何关系?当晶振频率为6时,机器周期是多少?答:规定一个机器周期的宽度为12个振荡脉冲周期,因此机器周期就是振荡脉冲的十二分频。
当振荡脉冲频率为6 时,一个机器周期为2 µs。
(5)51系列单片机常用的复位方法有哪几种?画电路图并说明其工作原理。
答:(a)上电复位电路(b)按键复位电路单片机常见的复位电路图(a)为上电复位电路,它是利用电容充电来实现的。
在接电瞬间,端的电位及相同,随着充电电流的减少,的电位逐渐下降。
只要保证为高电平的时间大于两个机器周期,便能正常复位。
图(b)为按键复位电路。
该电路除具有上电复位功能外,若要复位,只需按图(b)中的键,此时电源经电阻R1、R2分压,在端产生一个复位高电平。
习题3 答案3.2 填空题(2)用C51编程访问51单片机的并行口是,可以按字节,寻址操作,还可以按位操作(4)C51中定义一个可位寻址变量访问P3口的P3.1引脚的方法是 3^1;(10)下面的循环执行了无限次空语句。
3;(i!=0);(15)在以下的数组定义中,关键字“”是为了把数组存储在程序存储器中b[]={};3.3 上机操作题(1)3_3_1——第三章习题3.3上机操作题(1)<51>( i); 延时函数声明() 主函数(1){P1=0x55; 按状态1的方式点亮8个(200); 延时P1=0; 按状态2的方式点亮8个(200); 延时( i) 延时函数参见任务1程序1_1(2)3_3_2——第三章习题3.3上机操作题(2)<51> 包含头文件51( i); 延时函数声明() 主函数(1){0x10; 高4位灯的位置初值为00010000B0x08; 低4位灯的位置初值为00001000B(0<4){P1(); 循环点亮灯l<<=1; 高4位灯的位置移动r>>=1; 低4位灯的位置移动(200); 延时( i) 延时函数参见任务1程序1_1(3)3_3_3——第三章习题3.3上机操作题(3)<51> 包含头文件51( i); 延时函数声明() 主函数i;[]={0x89, 0,0x86, 0,07, 0,07, 0,00, 0};(1){(0<10){P1[i]; 显示字送P1口(200); 延时( i) 延时函数参见任务1程序1_1习题4 答案4.2 填空题(1)51系列单片机定时器的内部结构由以下四部分组成:①定时器T0 ②定时器T1 ③定时器方式寄存器④定时器控制寄存器(251系列单片机的定时/计数器,若只用软件启动,及外部中断无关,应使中的0(3)51系列单片机的T0用做计数方式时,用工作方式1(16位),则工作方式控制字为0x05(4)定时器方式寄存器的作用是选择定时器T01的工作方式(5)定时器方式寄存器的作用是控制定时器的启动、停止,标志定时器的溢出和中断情况。
单片机原理及应用技术苏家建曹柏荣汪志锋课后习题参考答案
单片机原理及应用技术苏家建曹柏荣汪志锋课后习题参考答案单片机原理及应用技术苏家建课后习题参考答案第三章MCS-51指令系统3-1MCS-51指令系统有哪几种寻址方式?按功能分类有哪几种指令?3-2设A=0FH,R0=30H,片内RAM的(30H)=0AH,(31H)=0BH,(32H)=0CH,下列程序段运行后的结果?MOVA,@R0;A=0AHMOV@R0,32H;(30H)=0CHMOV32H,A;(32H)=0AHMOVR0,#31H;R0=31HMOVA,@R0;A=(31H)=0BH3-3(1)R0的内容传送到R1MOVA,R0MOVR1,A(2)内部RAM20H单元的内容传送到AMOVA,20H(3)外部RAM30H单元的内容传送到R0MOVR1,#30HMOVXA,@R1MOVR0,A(4)外部RAM30H单元的内容传送到内部RAM20H单元MOVR1,#30HMOVXA,@R1MOV20H,A(5)外部RAM1000H单元的内容传送到内部RAM20H单元MOVDPTR,#1000HMOVXA,@DPTRMOV20H,A(6)程序存储器ROM2000H单元的内容传送到R1MOVDPTR,#2000HCLRAMOVCA,@A+DPTRMOVR1,A(7)RAM2000H单元的内容传送到内部RAM20H单元MOVDPTR,#2000HMOVXA,@DPTRMOV20H,A(8)RAM2000H单元的内容传送到外部RAM30H单元MOVDPTR,#2000HMOVXA,@DPTRMOVX@R0,A(9)RAM2000H单元的内容传送到外部RAM1000H单元MOVDPTR,#2000HMOVXA,@DPTRMOVDPTR,#1000HMOVX@DPTR,A3-4设内部RAM30H=5AH,5AH=40H,40H=00H,P1=7FH,下面程序执行后的结果如何?MOVR0,#30H;R0=30HMOVA,@R0;A=(30H)=5AHMOVR1,A;R1=5AHMOV@R1,P1;(5AH)=7FHMOVA,P1;A=7FHMOV40H,#20H;(40H)=20HMOV30H,40H;(30H)=00H3-5编程,将内部RAM20H-2FH共16个连续单元清零ORG0100HMOVR0,#20HMOVR2,#16LOOP: MOV@R0,#00HINCR0DJNZR2,LOOPEND3-6编程,求出内部RAM20H单元中的数据含“1”的个数,并将结果存入21H单元中。
单片机原理及应用(曹克澄)课程课后习题答案
《单片机道理及运用》习题答案第一章基本常识1.微型盘算机重要由哪几部分构成?各部分有何功效?答:一台微型盘算机由中心处理单元(CPU).存储器.I/O接口及I/O装备等构成,互相之间经由过程三组总线(Bus):即地址总线AB.数据总线DB和掌握总线CB来衔接.CPU由运算器和掌握器构成,运算器可以或许完成各类算术运算和逻辑运算操纵,掌握器用于掌握盘算机进行各类操纵.存储器是盘算机体系中的“记忆”装配,其功效是存放程序和数据.按其功效可分为RAM和ROM.输入/输出(I/O)接口是CPU与外部装备进行信息交换的部件.总线是将CPU.存储器和I/O接口等相对自力的功效部件衔接起来,并传送信息的公共通道.2. 将下列十进制数分别转换成为二进制数,十六进制数和BCD码数的情势:100,64,78,80解:1)100=1100100B=64H=0001 0000 0000BCD;2)64=1000000B=40H=0110 0100BCD;3)78=1001110B=4EH=0111 1000BCD.3. 写出下列十六进制无符号数对应的十进制数和二进制:0D5H,64H,2CH,4FEH解:1)0D5H=213=11010101B;2) 64H=100=1100100B;3) 2CH=44=101100B;4)4. 写出下列十进制数对应的二进制原码.反码和补码:+35,+50,-10,-20解:1)+35=(23H)原=(23H)反=(23H)补;2)+50=(32H)原=(32H)反=(32H)补;3)-10=(8AH)原=(0F5H)反=(0F6H)补;4)-20=(94H)原=(0EBH)反=(0ECH)补;5. 根据给定的原码.反码.补码求真值.1) (0CBH)原=(-75)真值;2)(8BH)反=(-116)真值;3)(9BH)补=(-101)真值;4)(6BH)补=(+107)真值;解:1) (0CBH)原=(-75)真值;2)(8BH)反=(-116)真值;3)(9BH)补=(-101)真值;4)(6BH)补=(+107)真值;6. 试分别断定下列各组数据大小?1)A=0.011B B=0.0112)A=1001B B=1001 C=1001H解:1)A=0.011B=0×2-1+1×2-2+1×2-3=0.25+0.125=0.375;C=0.011H=0×16-1+1×16-2+1×16-3所以:A>B>C2)A=1001B=9;B=1001;C=1001H=4097所以:A<B<C7.先将下列各组数据转换为补码暗示的带符号数,然后用进行补码运算,再将成果还原成原码,并写出对应的十进制数磨练成果是否准确.1)(―74)+412)(―74)―41解:根据补码界说有:―74=(0B6H)补,+41=(29H)补,―41=(0D7H)补1)[(―74)+41]补=(―74)补+(41)补=(0B6H+29H)补=(0DFH)补=(-33)真值十进制数运算:(―74)+41=―33所以:二者运算成果雷同.2)[(―74)―41]补=(―74)补+(―41)补=(0B6H+0D7H)补=(8DH)补=(-115)真值十进制数运算:(―74)―41=―115所以:二者运算成果雷同.8.何谓单片机?单片机有何特色?答:单片机(Single Chip Microcomputer)是指把CPU.RAM.ROM.准时器/计数器以及I/O接口电路等重要部件集成在一块半导体芯片上的微型盘算机.单片机在掌握运用范畴中的特色:(1)体积小.构造简略.靠得住性高;(2)掌握功效强;(3)低电压.低功耗;(4)优良的性价比.9.单片机内部ROM的设置装备摆设有几种情势?答:单片机片内ROM的设置装备摆设状况可分四种:(1)片内掩膜(Mask)ROM型单片机(如8051),合适于定型大批量运用产品的临盆;(2)片内EPROM型单片机(如8751),合适于研制产品样机;(3)片内无ROM型单片机(如8031),需外接EPROM,单片机扩大灵巧,实用于研制新产品;(4)EEPROM(或Flash ROM)型单片机(如89C51),内部程序存储器电可擦除,运用更便利.第2章 MCS-51系列单片机的构造和时序1.8051单片机内包含哪些重要功效部件?各有什么功效?答:8051单片机是一个完全的单片微型盘算机.它包含以下功效部件:(1)1个8位CPU;(2)片内4KB的程序存储器ROM;(3)片内128B的数据存储器RAM;(4)可寻址外部程序存储器和数据存储器空间各64KB的掌握电路;(5)21个特别功效存放器SFR;(6)4个8位并行I/O口P0~P3,共32根I/O线;(7)1个全双工的串行口;(8)2个16位准时器/计数器;(9)5个中止源,有2个优先级嵌套中止构造;(10)片内振荡器及时钟电路.2.8051单片机的EA旌旗灯号有何功效?8031的EA引脚应若何处理,为什么?答:(1) EA是拜访外部程序存储器ROM的掌握旌旗灯号.当EA为低电平(接地)时,CPU只履行外部程序存储器中的程序.当EA为高电平且PC值小于0FFFH(4K)时,CPU履行内部程序存储器的程序,但当PC的值超出4K时(对8051/8751/8951)将主动转去履行片外程序存储器内的程序.8031单片机无片内ROM的,必须外部扩大程序存储器,是以,8031的EA必须接地(低电平).3.MCS-51单片机的P0~P3口各有什么特色?答:MCS-51单片机有P0.P1.P2.P3四个双向的8位并行I/O口,每个端口可以按字节输入或输出,每一条I/O线也可以单独用作输入或输出(即按位进行输入或输出).每个端口都是由一个锁存器(即特别功效存放器P0~P3),一个输出驱动器和两个(P3口为3个)输入缓冲器构成.并行I/O口作输出时数据可以锁存,作输入时数据可以缓冲,但它们又各具特色.(1)P0口和P2口构成MCS-51单片机的16位地址总线,P0口照样8位的数据总线.P3口多用于第二功效输入或输出.平日只有P1口用于一般输入/输出.P3口列位的第二功效(2)体系复位后,P0~P3口的32个管脚均输出高电平,是以在体系的设计进程中,应包管这些管脚掌握的外设不会因为体系复位而产生误动作.(3)P0~P3口输出级的电路构造有所不合.P0口是三态输出,其每个管脚均可以驱动8个LSTTL输入,而P1~P3口的输出级均有上拉电阻,每个管脚可驱动4个LSTTL输入.(4)每个并行口,可界说一部分担脚为输入脚,另一部分担脚为输出脚,没有运用的管脚可以悬空.4.简述8051单片机存储器的组织构造和片内RAM的地址空间分派.答:8051单片机的存储器包含程序存储器和数据存储器,从用户运用的角度可分为三个逻辑地址空间:(1)片内.片外同一编址的64KB程序存储器地址空间0000H~0FFFFH;(2)64KB的外部数据存储器或扩大I/O口地址空间0000H~0FFFFH;(3) 256B的片内数据存储器地址空间00H~FFH(包含低128B的内部RAM地址00H~7FH和高128B的特别功效存放器地址空间,21个SFR 离散地散布在这个区域).内部RAM共有128个单元,根据用处可划分为工作存放器区.位寻址区和通用RAM区,各区域的特征如下:(1)工作存放器区(00H~1FH)存放器区32个单元共分4个组,每个组有8个8位的存放器R0~R7.在任何时刻,四个组中只能有一组可以成为当前工作存放器组运用,其他三组作为一般的内部RAM运用.当前工作存放器组由程序状况字存放器PSW的RS0和RS1两位的状况来决议.(2)位寻址区( 20H~2FH)共16个单元,每个单元有8个位,每个位都有一个位地址,编号为00H~7FH,位寻址区的16个单元也可以按字节寻址,作为一般的内部RAM运用.(3)通用RAM区(30H~7FH)这部分存储空间作为一般的内部RAM区或客栈区,CPU只能按字节方法寻址.5.8051单片机有哪些特别功效存放器?答:8051单片机有21个8位的特别功效存放器(SFR),它们的地址离散地分部在内部数据存储器的80H~FFH地址空间.在8051单片机构造中,21个SFR在物理上是疏散在片内各功效部件中:(1)CPU的中SFR:Acc.B.PSW.SP和DPTR(16位存放器,由DPH和DPL构成);(2)准时/计数器单元中的存放器:TMOD.TCON.T0(16位存放器,由TH0和TL0构成)和T1(16位存放器,由TH1和TL1构成);(3)并行I/O口存放器:P0.P1.P2和P3;(4)中止体系内的存放器:IE和IP;(5)串行端口中的存放器:SCON.SBUF和PCON.6.程序计数器PC的功效和特色?答:程序计数器PC是一个16位的专用存放器,用来存放即将要履行的指令地址,可对64KB的程序存储器直接寻址.它具有主动加1功效,当CPU要取指令时,PC的内容送地址总线上,从存储器中掏出指令后,PC内容则主动加1,指向下一条指令,从而包管程序按次序履行.PC固然也是CPU内部的一个存放器,但它在物理构造上是自力的,没有地址,是不成寻址的,用户无法对它进行直接读写,不属特别功效存放器.7.什么叫客栈?客栈指针SP的感化是什么?8051单片机客栈的最大容量是若干字节?答:客栈是按照“先辈后出,落后先出”的原则来存取数据的一个内部RAM区域,这个存储器区域的一端是固定的(栈底),另一端是运动的(栈顶),每个存储单元是不克不及按字节随意率性拜访的.客栈指针SP始终指向栈顶单元,栈顶跟着数据入栈和出栈高低浮动.8051单片机客栈的最大容量是128字节.8.8051单片机是若何肯定和转变当前工作存放器组?答:在任何时刻,8051单片机的四个工作存放器组中只能有一组可以成为当前工作存放器组运用,其他三组作为一般的内部RAM运用.当前工作存放器组由程序状况字存放器PSW的RS0和RS1两位的状况来决议,如表所示.根据须要,用户可以运用传送指令或位操纵指令转变RS1和RS0的内容来选择不合的工作存放器组.9.单片机复位后,CPU运用了哪一组工作存放器?工作存放器R0~R7对应的单元地址是什么?答:单片机复位后,RS1和RS0都为0,CPU选中第0组作为当前工作存放器组,工作存放器R0~R7对应的单元地址是00H~07H.10.程序状况字存放器PSW的感化是什么?列位的感化是什么?答:PSW是一个8位的特别功效存放器,由一些标记位构成,用于存放程序运行中的各类状况信息.它可以进行位寻址.列位的感化如下:Cy:进位标记位.在进行加(或减)法运算时,若操纵成果的最高位(D7位)有进位(或借位)时,Cy由硬件置1,不然Cy清0.在进行位操纵时,Cy又是位累加器,指令助记符用C暗示.AC:帮助进位标记位.在进行加(或减)运算时,若操纵成果的低半字节(D3位)向高半字节产生进位(或借位)时,AC位将由硬件主动置1,不然AC位清0.F0:用户标记位.用户根据须要对F0置位或复位,作为软件标记.RS1和RS0:工作存放器组选择掌握位.由用户用软件转变RS1和RS0的状况,以选择内RAM中的哪组工作存放器为当前工作存放器组.OV:溢出标记位.当进行补码运算时,运算成果超出-128~+127规模时,产生溢出,则OV主动置1,不然OV清0.PSW.1:保存位.8051中未界说.P:奇偶校验标记位.每条指令履行完后,该位始终跟踪累加器A中1的数量标奇偶性.假如A中有奇数个1,则P=1;不然P=0.11.什么是时钟周期.机械周期和指令周期?答:(1)时钟周期(又称为振荡周期)是指振荡器产生一个振荡脉冲旌旗灯号所用的时光,是振荡频率的倒数,称为拍节.(2)机械周期是指CPU完成某一个划定操纵所需的时光,8051单片机的一个机械周期包含6个状况,并依次暗示为S1~S6,每个状况分为2个节奏.是以一个机械周期包含12个时钟周期(振荡周期),依次暗示为:S1P1.S1P2.S2P1.….S6P1.S6P2.(3)指令周期是指CPU履行一条指令所须要的时光称为指令周期.MCS-51单片机指令周期根据指令的不合,可包含有1或2或4个机械周期.12.8051单片机复位后存放器PC.A.PSW.SP .P0~P3的状况各是什么?复位后内部RAM中的数据有何影响?答:8051单片机复位后PC为0000H,A和PSW均为00H,SP为07H,P0~P3均为FFH.单片机的复位不影响内部RAM的状况(包含工作存放器Rn ).13.80C51若何进入节电工作方法?答:只有CHMOS型单片机(如80C51)才有这种工作方法,有两种节电方法,即待机方法和掉落电呵护方法.由片内SFR中的电源掌握存放器PCON的低4位来掌握待机和掉落电两种方法(1)IDL:待机方法位.若IDL=1,进入待机方法;(2)PD:掉落电方法位.若PD=1,进入掉落电方法;当PD和IDL同时为1,则先辈入掉落电工作方法.复位后,PCON中有界说的位均为0.第3章 MCS-51系列单片机指令体系1.简述汇编指令格局.答:汇编说话的指令格局一般如下:[标号:]操纵码[第一操纵数][,第二操纵数][,第三操纵数][;注释]个中:带有方括号[……]的部分代表可选项.标号:是暗示该指令的符号地位,可以根据须要进行设置.标号以英文字母开端的1-6个字母或数字构成的字符串暗示,并以“:”结尾.操纵码:是暗示指令的操纵功效,用助记符暗示.每条指令都有操纵码,是指令的焦点部分.操纵数:暗示介入传送.运算的数据或数据地址.这里的操纵数不必定就是直接介入运算或传送的,而应根据操纵数的寻址方法,查找出真正介入运算或传送的数据.二个或二个以上操纵数之间用“,”距离.注释:用来解释该条指令或一段程序的功效,便于对指令或程序的浏览懂得.注释以“;”为开端,注释部分对程序的履行没有影响.2.什么叫寻址方法?在MCS-51系列单片机指令体系中,重要有哪几种寻址方法?试分别举例解释.答:寻址就是查找操纵数的地址,查找操纵数地址的方法,称为操纵数地址的寻址方法,简称寻址方法.在MCS-51系列单片机指令体系中,重要的寻址方法有:(1)立刻寻址方法,指令如:MOV A,#67H;(2)立刻寻址方法,指令如:MOV A,66H;(3)存放器寻址方,指令如:MOV A,R3;(4)存放器间接寻址方法,指令如:MOV A,@R1;(5)变址寻址方法,指令如:MOVC A,@A+DPTR;(6)相对寻址方法,指令如:SJMP 30H;(7)位寻址方法,指令如:MOV ACC.3,Cy3.试解释下列指令中划线部分的寻址方法.MOV A,@R0ADD A,#36HMOVC A,@A+PCDJNZ R2,relSETB RS1CLR AMOV 45H,ACLR C解:第1条为存放间接寻址方法;第2条指令为立刻寻址方法;第3条指令为变址寻址方法;第4条指令为相对寻址方法,第5条指令为位寻址方法,第6条指令为存放器寻址,第6条指令为直接寻址方法,第7条指令为位寻址方法.4.设A=9BH,R0=30H,内RAM的(30H)=40H,(40H)=6DH,分别履行下列指令,解释被真正传送的数据是若干?1)MOV A,#40H2)MOV 40H,@R03)MOV A,30H4)MOV A,@R05)MOV A,R0答:1)真正被传送的数据是立刻数40H.2)真正被传送的数据是R0间址中(即30H单元中)的数据40H.3)真正被传送的数据是30H单元中的数据40H.4)真正被传送的数据是R0间址中(即30H单元中)的数据40H.5)真正被传送的数据是R0中的数据30H.5.设A=86H,R0=30H,R1=40H,内RAM的(30H)=76H,(40H)=6BH,履行下面程序:MOV A,40HMOV @R0,AMOV A,R0MOV @R1,AMOV R1,AMOV @R1,#70H后,A=,R0=,R1=,(30H)=,(40H)=解: MOV A,40H ;A=6BHMOV @R0,A ;(R0)=(30H)=6BHMOV A,R0 ;A=30HMOV @R1,A ;(R1)=(40H)=30HMOV R1,A ;R1=30HMOV @R1,#70H ;(R1)=(30H)=70H所以:A=30H ,R0=30H ,R1=30H ,(30H)=70H ,(40H)=30H6.设A=65H,R0=30H,R1=31H,R2=32H,内RAM的(30H)=40H,(31H)=50H,(32H)=60H,(40H)=70H,(50H)=80H,履行下面程序:XCHD A,@R1MOV 40H,ASWAP AMOV 50H,AXCH A,R2MOV @R0,A后,A=,R0=,R1=,R2=,(30H)=,(31H)=,(32H)=,(40H)=,(50H)=解: XCHD A,@R1 ;A=60H,(R1)=(31H)=55HMOV 40H,A ;(40H)=60HSWAP A ;A=06HMOV 50H,A ;(50H)=06HXCH A,R2 ;A=32H,R2=06HMOV @R0,A ;(R0)=(30H)=32H所以:A=32H ,R0=30H ,R1=31H ,R2=06H ,(30H)=32H ,(31H)=55H ,(32H)=60H ,(40H)=60H ,(50H)=06H7.履行下面程序后,试问:A=?ORG 1000HMOV DPTR,#1020HMOV A,#03HMOVC A,@A+DPTRRETORG 1020HDB 56H,78H,65H,29H,10H解: ORG 1000HMOV DPTR,#1020H ;DPTR=1020HMOV A,#03H ;A=03HMOVC A,@A+DPTR ;A=(1023H)=29HRETORG 1020HDB 56H,78H,65H,29H,10H所以:A=29H8.试用数据传送指令来实现下列请求的数据传送.1)将R2中的内容送到R3中.2)将内RAM 30H单元中的内容与外RAM 2040H单元中的内容交换.3)将ROM 2040H单元中的数据存放在内RAM 50H单元中.4)将外RAM 30H单元中的内容送到R2中.5)将R2与R3中的内容进行交换.6)将ROM 2100H单元中内容送外RAM 3165H单元中.解:1) MOV A,R2MOV R3,A2) MOV DPTR 2040HMOVX A,@DPTRMOV R1,AMOV A,30HMOVX @DPTR,AMOV 30H,R13) MOV A,#00HMOV DPTR,#2040HMOVC A,@A+DPTRMOV 50H,A4) MOV R0,#30HMOVX A,@R0MOV R2,A5) XCH A,R2XCH A,R3XCH A,R26) MOV A,#00HMOV DPTR,#2100HMOVC A,@A+DPTRMOV DPTR,#3165HMOVX @DPTR,A9.设A=7EH,R0=40H,(40H)=9AH,B=23H,Cy=1.分别履行下列指令后,试问:A=?各标记位为什么状况?1)ADD A,@R02)ADDC A,R03)SWAP A4)XCH A,@R05)INC A6)SUBB A,#56H7)SUBB A,R08)RLC A9)RR A10)CPL A11)ANL A,@R012)ORL A,#8FH14)ANL 40H,A15)ORL 40H,#0F0H16)ANL A,#0FH17)DEC A18)MUL AB19)DIV AB20)RRC A解:1)ADD A,@R0A=A+(R0)=A+(40H)=7EH+9AH=18H,Cy=1,AC=1,OV=0,P=02)ADDC A,R0A=A+R0+Cy=7EH+40H+1=0BFH,Cy=0,AC=0,OV=1,P=1 3)SWAP AA=0E7H4)XCH A,@R0A=(R0)=(40H)=9AH,(R0)=(40H)=A=7EH,P=05)INC AA=A+1=7EH+1=7FH,P=16)SUBB A,#56HA=A-56H-Cy=7EH-56H-1=27H,Cy=0,AC=0,OV=0,P=0 7)SUBB A,R0A=A-R0-Cy=7EH-40H-1=3DH,Cy=0,AC=0,OV=0,P=18)RLC AA=11111101B=0FDH,Cy=0,P=19)RR AA=00111111B=3FH,P=010)CPL AA=81H,P=011)ANL A,@R0A=A∧(R0)=A∧(40H)=7EH∧9AH=1AH,P=112)ORL A,#8FHA=A∨8FH=7EH∨8FH=0FFH,P=013)XRL A,40HA=A⊕(40H)=7EH⊕9AH=0E4H,P=0(40H)=(40H)∧A=9AH∧7EH=1AH,A=7EH15)ORL 40H,#0F0H(40H)=(40H)∨0F0H=9AH∨0F0H=0FAH,A=7EH 16)ANL A,#0FHA=A∧0FH=7EH∧0FH=0EH,P=117)DEC AA=A-1=7EH-1=7DH,P=018)MUL ABA×B=7EH×23H=01111110B×00100011B=0001 0001 0011 1010B=113AHB=11H,A=3AH,OV=1,P=019)DIV ABA÷B=7EH÷23H=0111 1110B÷0010 0011B=0000 0011B余0001 0101BA=03H,B=15H,OV=0,P=020)RRC AA=0BFH,Cy=0,P=110.试编写程序,请求将内RAM 30H~4FH中的内容平移送到40H~5FH中.解:(参考程序)START:MOV R0,#4FHMOV R1,#5FHMOV R2,#20HLOOP:MOV A,@R0MOV @R1,ADEC R0DEC R1DJNZ R2,LOOPEND11.试编写程序,将内RAM的30H~4FH中的内容清零.解:(参考程序)START:MOV R0,#30HCLR AMOV R2,#20HLOOP:MOV @R0,AINC R0DJNZ R2,LOOPEND12.试编写程序,在内RAM的30H~4FH中查找症结字0AH,如有,则将内RAM的50H单元置为01H,并将找到的存放第一个症结字的单元地址存放在内RAM的52H单元中.解:(参考程序)START:MOV R0,#30HMOV R2,#20HMOV 50H,#00HLOOP1:CJNE @R0,#0AH,LOOP2MOV 50H,#01HMOV 52H,R0SJMP LOOP3LOOP2:INC R0DJNZ R2,LOOP1LOOP3:END13.在内RAM从30H到3FH单元中存放着符号数,请求统计正数.零.负数的个数,成果分别存放在内RAM的40H.41H.42H三个单元中.解:(参考程序)START:MOV R0,#30HMOV R2,#10HMOV 40H,#00HMOV 41H,#00HMOV 42H,#00HLOOP1:MOV A,@R0JNZ LOOP2 ;断定A是否为非0,非0转移INC 41H ;零的个数统计量加1SJMP LOOP4LOOP2:JB ACC.7,LOOP3 ;断定A是否为负数,是负数则转移INC 40H ;正数的个数统计量加1SJMP LOOP4LOOP3:INC 42H ;负数的个数统计量加1LOOP4:INC R0DJNZ R2,LOOP1END14.剖析履行下面各段程序的成果.(1)ORG 1000HMOV A,#34HADD A,#78HDA ARETA=,OV=,P=,Cy=,AC=解: ORG 1000HMOV A,#34H ;A=34HADD A,#78H ;A=A+78H=34H+78H=0ACH,Cy=0,AC=0,OV=1,P=0DA A ;A=A+66H=0ACH+66H=12H,Cy=1,AC=0,OV=0,P=0RET所以:A=12H ,OV=0 ,P=0 ,Cy= 1 ,AC=0(2) MOV SP,#5FHMOV A,#54HMOV B,#78HPUSH APUSH BPOP APOP BRETA=,B=,SP=解: MOV SP,#5FH ;SP=5FHMOV A,#54H ;A=54HMOV B,#78H ;B=78HPUSH A ;SP=60H,(SP)=(60H)=54HPUSH B ;SP=61H,(SP)=(61H)=78HPOP A ;A=(SP)=(61H)=78H,SP=60HPOP B ;B=(SP)=(60H)=54H,SP=5FHRET所以:A=78H ,B=54H ,SP=5FH(3) MOV A,#7DHADD A,#6BHMOV R0,#34HMOV 34H,#0BCHADDC A,@R0XRL A,R0ORL A,34HMOV @R0,ASWAP AXCH A,R0RETA=,R0=,(34H)=解: MOV A,#7DH ;A=7DHADD A,#6BH ;A=7DH+6BH=0E8H,Cy=0MOV R0,#34H ;R0=34HMOV 34H,#0BCH ;(34H)=0BCHADDC A,@R0 ;A=A+(R0)+Cy=A+(34H)+Cy=0E8H+0BCH +0=0A4H,Cy=1XRL A,R0 ;A=A⊕R0=0A4H⊕34H=90HORL A,34H ;A=A∨(34H)=90H∨0BCH=0BCHMOV @R0,A ;(R0)=(34H)=A=0BCHSWAP A ;A=0CBHXCH A,R0 ;A=34H,R0=0CBHRET所以:A=34H ,R0=0CBH ,(34H)=0BCH(4)CLR CMOV A,#55HMOV R0,#23HLOOP1:ADDC A,R0JNC LOOP1RETA=,R0=解: CLR C ;Cy=0MOV A,#55H ;A=55HMOV R0,#23H ;R0=23HLOOP1:ADDC A,R0 ;(1)A=A+R0+Cy=78H,(2)A=9BH,(3)A=0BEH,(4)A=0E1H;(5)A=04H,Cy=1JNC LOOP1RETA=04H ,R0=23H(5) ORG 2000HMOV A,#00HMOV R2,#09HLOOP1:ADD A,#03HDA ADJNZ R2,LOOP1MOV 30H,ARETA=,R2=,(30H)=解:ORG 2000HMOV A,#00H ;A=00HMOV R2,#09H ;R2=09HLOOP1:ADD A,#03H ;(1)A=03H,(2)A=06H,(3)A=09H,(4)A=0CH,(5)…DA A ;(1) A=03H,(2)A=06H,(3)A=09H,(4)A=12H,(5)…DJNZ R2,LOOP1;(1) R2=08H,(2)R2=07H,(3)R2=06H,(4)R2=05H,(5)…MOV 30H,A ;(30H)=27HRETA=27H ,R2=00H ,(30H)=27H15.对3-14(1).(5)题进行手工汇编.16.试编制能延时40ms的程序.解:设fosc=12MHz,则机械周期为1us.参考程序START:MOV R0,#84H ;1个机械周期数,R0=132MOV R1,#96H ;1个机械周期数,R1=150LOOP1:DJNZ R1,LOOP1 ;2个机械周期数MOV R1,#64H ;1个机械周期数DJNZ R0,LOOP1 ;2个机械周期数RET ;2个机械周期数上述程序履行的机械周期数为:1+1+(2×150+1+2)×132+2=40000(个)所以上述程序履行的时光即为40ms.17.试编制程序,实现1+2+3+…+100=?解:剖析:进行十进制数加法,是以须要进行BCD码调剂,个中千位.百位数存放在31H单元,十位.个位数存放在30H单元中.参考程序START:MOV A,#00HMOV R0,#01HMOV 31H,#00HLOOP1:ADD A,R0DA AJNC LOOP2INC 31HLOOP2:PUSH AMOV A,R0ADD A,#01HDA AJC LOOP3MOV R0,APOP ASJMP LOOP1LOOP3:POP AINC 31HMOV 30H,AEND18.在内RAM的30H~3FH单元中存放着16个字节的无符号数,请求比较大小,并按从大到小次序存放在内RAM的30H~3FH单元中.解:参考程序START:MOV R0,#30HMOV R2,#0FHLOOP1:MOV A,R0INC AMOV R1,ALOOP2:MOV A,@R0CLR CSUBB A,@R1JNC LOOP2XCH A,@R0XCH A,@R1INC R1CJNE R1,#40H,LOOP2INC R0DJNZ R2,LOOP1END19.编制程序实现下列逻辑功效:Q=YZX+X Z Y解:参考程序MOV C,YANL C,ZMOV F0,CMOV C,XANL C,/F0MOV F0,CMOV C,YANL C,/XANL C,/ZORL C,F0MOV Q,CEND20.浏览下面程序,剖析履行后的成果,并进行手工汇编.ORG 0100HMOV A,#67HCPL AMOV ACC.6,CCLR CMOV ACC.4,C解:(1)剖析履行成果ORG 0100HMOV A,#67H ;A=67H=01100111BSETB ACC.7 ;A=11100111BMOV C,ACC.2 ;Cy=1CPL A ;A=00011000BMOV ACC.6,C ;A=01011000BCLR C ;Cy=0SETB ACC.0 ;A=01011001BMOV ACC.4,C ;A=01001001B所以成果:A=49H,Cy=0第4章 MCS-51系列单片机中止体系与准时器/计数器1.盘算机与外部装备实现数据传送有哪些方法?答:在盘算机体系中,CPU与I/O接口授送数据的掌握方法重要有无前提传送方法.前提传送方法.中止方法和存储器直接存取方法(DMA方法)等四种.2.什么叫中止?采取中止方法有些长处?答:中止是盘算机的CPU暂停正在履行的程序,转而履行提出中止请求的谁人外部装备或事宜的办事程序(即中止办事程序),待办事程序处理完毕后,再返回本来程序的进程.采取中止方法的长处:盘算机引入中止技巧,解决了CPU与外设的速度匹配问题,进步了CPU的工作效力,同时使盘算机具有分时处理功效.及时处理功效.故障处理功效等.3.中止响应的前提有哪些?简叙中止的响应步调.答:中止响应的前提有:(1)有中止请求旌旗灯号;(2)中止请求没有被屏障;(3)中止是凋谢的;(4)CPU在处理完现行指令后响应中止;同时还要具备:(1)CPU没有处理同级或更高等中止;(2)正在履行的指令不是RETI.也不是拜访IE和IP的指令.中止响应的步调是:(1)关中止;(2)保管断点;(3)呵护现场;(4)转入响应的中止办事程序;(5)恢复现场;(6)开中止;(7)中止返回.4.在MCS-51单片机体系中,有哪些中止源?响应这些中止的办事程序进口地址分别是若干?若何合理安插中止办事程序?答:在MCS-51单片机体系中,中止源有:(1)0INT:外部中止0,中止请求旌旗灯号由P3.2输入;(2)TF0:内部准时器/计数器0溢出中止;(3)1INT:外部中止1,中止请求旌旗灯号同P3.3输入;(4)TF1:内部准时器/计数器1溢出中止;(5)TI或RI:串行口中止请求,包含串行口接收中止和串行口发送中止.响应这些中止的办事程序进口地址安插:(1)0INT:0003H;(2)TF0:000BH;(3)1INT:0013H;(4)TF1:001BH;(5)TI或RI:0023H.在安插中止办事程序地址时,应当斟酌中止办事程序的字节数,假如字节数小于等于8个字节,则直接存放在从划定的进口地址开端的空间中,假如字节数大于8个字节,则因为,各中止办事程序只有8个字节空间,不克不及占用其它中止办事程序的空间,是以在进口地址处放一条 LJMP XXXXH指令,真正的中止办事程序存放在以XXXXH开端的空间中.5.在单片机复位后,IP和IE均为何值?这些值说清楚明了什么?假如当前单片机体系只许可凋谢0INT.T1为高等INT和T0中止源,且请求0中止源,其余为低级中止源,若何设置IP和IE的值?答:在单片机复位后,IP和IE均为00H.IP为00H,解释复位后,各中止的优先级均为低级优先级;IE为00H,解释复位后,制止所有的中止源中止,CPU也处于制止响应中止状况.假如当前单片机体系只许可凋谢0INT.T1INT和T0中止源,且请求0为高等中止源,其余为低级中止源,则设置IP和IE的值的指令如下(参考):MOV IP,#09H ;IP只能字节操纵MOV IE,#83H ;IE还可能经由过程位操纵指令实现END或MOV IP,#09H ;IP只能字节操纵SETB ET0SETB EX0SETB EAEND6.外部中止有几种触发方法?若何选择?答:外部中止有两种触发方法,一种是电平触发方法,另一种是降低沿触发方法.假如设置为电平触发方法,则将TCON中的IT0或IT1清0,指令为:CLR IT0或CLR IT1;假如设置为降低沿触发方法,则将TCON中的IT0或IT1置1,指令为:SETB IT0或SETB IT1.7.什么叫中止嵌套?答:假如CPU正在处理的是低级的中止请求,那么高等的中止请求可以使CPU暂停处理低级中止请求的中止办事程序,转而处理高等中止请求的中止办事程序,待处理完高等中止请求的中止办事程序后,再返回原低级中止请求的中止办事程序,这种情形称为中止嵌套.8.准时器0和准时器1各有几种工作方法?简述之.答:准时器0的工作方法有方法0.方法1.方法2.方法3;准时器1的工作方法有方法0.方法1.方法2.工作方法0是13位准时/计数器工作方法;工作方法1是16准时/计数器工作方法;工作方法2是8位主动重装准时/计数器工作方法;工作方法3仅限于准时器0,是两个8位准时/计数器工作方法.9.写出TMOD的构造.列位名称和感化.答:TMOD的构造:TMOD (89H) 列位的名称及感化如下:GATE:选通门掌握位.当GATE=0时,由TRx启动Tx工作;当GATE=1时,由TRx和INTx配合启动Tx工作.C/T:准时器/计数器选择位.当C/T=0时,准时器状况;当C/T=1时,计数器状况.M1.MO:工作方法选择位.当M1 M0=00时,方法0,13位准时/计数器;当M1 M0=01时,方法1,16位准时/计数器;当M1 M0=10时,方法2,8位主动重装准时/计数器; 当M1 M0=11时,方法3,分二个8位准时/计数器.10.已知单片机体系时钟频率f osc=6MHz,若请求准不时光分别为0.1ms.1ms.10ms,准时器0工作在方法0.方法1.方法2情形下,盘算准时初值TH0.TL0分别为若干?解:因为f osc=6MHz,所以机械周期为2us.(1)方法0:准时0.1ms:初值=213-100/2=8192-50=8142=11111110 01110B,所以:TH0=0FEH,TL0=0EH准时1ms:初值=213-1000/2=8192-500=7692=11110000 01100B,所以:TH0=0F0H,TL0=0CH准时10ms:初值=213-10000/2=8192-5000=3192=01100011 11000B,所以:TH0=63H,TL0=18H(2)方法1:准时0.1ms:初值=216-100/2=65536-50=65486=11111111 11001110B=FFCEH,所以:TH0=0FFH,TL0=0CEH准时1ms:初值=216-1000/2=65536-500=65036=11111110 00001100B=FE0CH,所以:TH0=0FEH,TL0=0CH准时10ms:初值=216-10000/2=65536-5000=60536=11101100 01111000B=EC78H,所以:TH0=0ECH,TL0=78H(2)方法2:准时0.1ms:初值=28-100/2=256-50=206=11001110B=CEH,所以:TH0=0CEH,TL0=0CEH准时1ms:初值=28-1000/2=256-500<0所以:在方法2时超出准时规模,不克不及准时1ms.准时10ms:初值=28-10000/2=256-5000<0所以:同理在方法2时不克不及准时10ms.11.请求在P1.7引脚输出周期为20ms的方波.设单片机体系时钟频率f osc=12MHz.试编写准时器初始化程序和中止办事程序,并指定程序进口地址.解:根据题意,因为f osc=12MHz,所以机械周期为1us;因为要产生周期为20ms的方波,是以准不时光为10ms.设定采取准时器0,工作方法为方法1,TR触发方法,则:TMOD=00H准时初值=216-10000/1=65536-10000=55536=01100011 11000B,TH0=F0H,TL0=C8H程序如下:ORG 0000HLJMP MAINORG 000BHLJMP IT0ORG 0030HIT0:MOV TH0,#0F0HMOV TL0,#0C8HRETIORG 0100HMAIN:MOV TMOD,#00HMOV TH0,#0F0HMOV TL0,#0C8HSETB ET0SETB EASETB TR0LOOP:SJMP LOOPEND12.请求将准时器T0和T1的外部旌旗灯号输入端P3.4和P3.5作为新增的二个外部中止请求旌旗灯号,若何设置计数初值?答:根据题意,就是掌握请求外部中止源2个太少,须要增长2个外部中止源,是以将内部的T0和T1的两个中止源改为外部中止源,这两个外部中止源输进口分别为P3.4和P3.5,此时只要将T0和T1设置为计数器工作状况,方法均设置为方法0,则它们的初值均为11111111 11111B,即TH0=TH1=0FFH,TL0=TL1=1FH,只要P3.4和P3.5有旌旗灯号输入,即使T0和T1临盆中止旌旗灯号.13.请求在P1.0引脚上输出如图4-16所示的波形.试编写准时器初始化程序和中止办事程序,并指定程序进口地址.图4-16解:根据题意,只要将准不时光为50us,并设定一个计数存放器,当为0和4时对P1.0取反即可.假定本题采取T0,准时器工作状况,由TR0启动,工作方法为方法2.则:TMOD=00000010B=02H,初值=28-50=256-50=206=11001110B=CEH,TH0=0CEH,TL0=0CEH程序如下:ORG 0000HLJMP MAINORG 000BHLJMP IT0ORG 0030HIT0:CJNE R7,#00H,LOOP1SEBTLOOP1:CJNE R7,#01H,LOOP2LOOP2:INC R7CJNE R7,#05H,LOOP3MOV R7,#00HLOOP3:RETIORG 0100HMAIN:MOV R7,#00HMOV TMOD,#02HMOV TH0,#0CEHMOV TL0,#0CEHSETB ET0SETB EASETB TR0LOOP:SJMP LOOPEND另一种办法,采取二个准时器T0和T1,工作方法均为方法2,TR触发方法,个中T0准不时光为50us,T1准不时光为200us,二个准时器瓜代准时工作.则:TMOD=22HT0准时初值=28-50=256-50=206=11001110B=CEH,TH0=0CEH,TL0=0CEHT1准时初值=28-200=256-200=56=00111000B=38H,TH0=38H,TL0=38H程序如下:ORG 0000HLJMP MAINORG 000BHCLR TR0SETB TR1RETIORG 001BHCLR TR1SETB TR0RETIORG 0100HMAIN:MOV TMOD,#22HMOV TH0,#0CEHMOV TL0,#0CEHMOV TH1,#38HMOV TL1,#38HSETB ET0SETB ET1SETB EASETB TR0LOOP:SJMP LOOPEND14.试编写程序,使T1每计满100个外部输入脉冲后,使P0口输出0FFH的数据.解:根据题意,T1应为计数器工作状况,采取方法2,TR1启动工作.则:TMOD=20H初值=28-100=256-100=156=10011100B=9CH,TH0=9CH,TL0=9CH程序如下:ORG 0000HLJMP MAINORG 001BHMOV P0,#0FFHRETIORG 0100HMAIN:MOV TMOD,#20HMOV TH1,#9CHMOV TL1,#9CHSETB ET1SETB EASETB TR1LOOP:SJMP LOOPEND第5章存储器扩大技巧1.只读存储器有哪几种类型?其各自的特色是什么?答:只读存储器共分为以下五种:(1)掩膜ROM:掩膜ROM简称为ROM,其编程是由半导体存储器制作厂家完成,即在临盆进程中进行编程.掩膜ROM制作完成后,用户不克不及更改其内容.这种ROM芯片存储构造简略,集成度高,但因为掩膜工艺成本高,是以只合适于大批量临盆.(2)可编程只读存储器:可编程只读存储器即PROM,这种芯片出厂时并没有任何程序信息,其程序是在开辟时由用户写入.但这种ROM芯片只能写一次,其程序一旦写入就不克不及再进行修改.(3)紫外线擦除可改写只读存储器:紫外线擦除可改写只读存储器即EPROM,这种芯片的内容也由用户写入,但许可进行多次擦除和从新写入.(4)电擦除可改写只读存储器:电擦除可改写只读存储器即EEPROM (也写成E2PROM),它是一种用电旌旗灯号编程也用电旌旗灯号擦除的ROM芯片,它可以经由过程读写操纵进行逐个存储单元的读出和写入,读写操纵与RAM几乎没有什么不同.(5)闪速存储器:闪速存储器即Flash ROM,是在EPROM和E2PROM的基本上成长起来的一种只读存储器,读写速度均很快,存取时光可达70ns,存储容量可达2KB~16KB,近期甚至有16~64MB的芯片消失.这种芯片的可改写次数可以从1万次到100万次.闪速存储器(Flash Memory) 又称PEROM,具有掉落电后信息保存的特色,又可以在线写入,主动笼罩以前内容,且可以按页持续字节写入.2.随机存取存储器有哪几种类型?其各有什么不合?答:随机存取存储器(Random Access Memory)简称RAM,在单片机。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机原理及应用技术苏家建课后习题参考答案第三章MCS-51指令系统3-1 MCS-51指令系统有哪几种寻址方式?按功能分类有哪几种指令?3-2 设A=0FH,R0=30H,片内RAM的(30H)=0AH, (31H)=0BH, (32H)=0CH,下列程序段运行后的结果?MOV A,@R0 ;A=0AHMOV @R0,32H ;(30H)=0CHMOV 32H,A ;(32H)=0AHMOV R0,#31H ;R0=31HMOV A,@R0;A=(31H)=0BH3-3(1)R0的内容传送到R1MOV A,R0MOV R1,A(2)内部RAM 20H单元的内容传送到AMOV A,20H(3)外部RAM 30H单元的内容传送到R0MOV R1,#30HMOVX A,@R1MOV R0,A(4) 外部RAM 30H单元的内容传送到内部RAM 20H单元MOV R1,#30HMOVX A,@R1MOV 20H,A(5) 外部RAM 1000H单元的内容传送到内部RAM 20H单元MOV DPTR,#1000HMOVX A,@DPTRMOV 20H,A(6)程序存储器ROM 2000H单元的内容传送到R1MOV DPTR,#2000HCLR AMOVC A,@A+DPTRMOV R1,A(7) RAM 2000H单元的内容传送到内部RAM 20H单元MOV DPTR,#2000HMOVX A,@DPTRMOV 20H,A(8) RAM 2000H单元的内容传送到外部RAM 30H单元MOV DPTR,#2000HMOVX A,@DPTRMOV R0,#30HMOVX @R0,A(9) RAM 2000H单元的内容传送到外部RAM 1000H单元MOV DPTR,#2000HMOVX A,@DPTRMOV DPTR,#1000HMOVX @DPTR,A3-4 设内部RAM 30H=5AH,5AH=40H,40H=00H, P1=7FH, 下面程序执行后的结果如何?MOV R0,#30H ;R0=30HMOV A,@R0 ;A=(30H)=5AHMOV R1,A ;R1=5AHMOV @R1,P1; (5AH)=7FHMOV A,P1 ;A=7FHMOV 40H,#20H ;(40H)=20HMOV 30H,40H ;(30H)=00H3-5 编程,将内部RAM 20H-2FH共16个连续单元清零ORG 0100HMOV R0,#20HMOV R2,#16LOOP: MOV @R0,#00HINC R0DJNZ R2,LOOPEND3-6编程,求出内部RAM 20H单元中的数据含“1”的个数,并将结果存入21H单元中。
ORG 0100HMOV 21H,#0MOV R2,#8MOV A,20HCLR CLOOP: RLC AJC COUNTDJNZ R2, LOOPSJMP STOPCOUNT: INC 21HDJNZ R2,LOOPSTOP:SJMP $END3-7编程,找出内部RAM 30H-50H单元中出现FFH的次数,并将结果存入51H单元中。
ORG 0100HMOV 51H,#0MOV R0,#30HMOV R2,#20HLOOP:MOV A,@R0CJNE A,#0FFH,AGAININC 51HAGAIN: INC R0DJNZ R2,LOOPSJMP $END3-8编程,计算∑=0102ii,并将结果存入内部的30H单元ORG 0100HMOV 30H,#0MOV 31H,#0 ; i的初值MOV R0,#30HMOV R2,#11MOV A,31HLOOP:INC 31HADD A,@R0MOV @R0,AMOV A,31HRL ADJNZ R2,LOOPSJMP $END3-9 已知片内RAM(30H)=38H,(38H)=40H,(40H)=48H,(48H)=90H.说明下列指令源操作数的寻址方式,及指令执行的结果MOV A,40H ;A=48H 直接寻址MOV R0,A ;R0=48H 寄存器寻址MOV P1,#0F0H ;P1=0F0H直接寻址MOV @R0,30H ;(48H)=38H 寄存器间接寻址MOV DPTR,#3848H ;DPTR=3848H 直接寻址MOV 40H,38H ;(40H)=(38H)=40H 直接寻址MOV R0,30H ;R0=(30H)=38H 寄存器寻址MOV P0,R0 ;P0=38H 直接寻址MOV 18H,#30H ; (18H)=30H 直接寻址MOV A,@R0 ;A=(38H)=40H 直接寻址MOV P2,P1 ;P2=0F0H直接寻址3-10设R0=32H,A=48H,片内RAM (32H)=80H,(40H)=08H.求指令运行的结果MOV A,@R0 ;A=(32H)=80HMOV @R0,40H ; (32H)=(40H)=08HMOV 40H,A ; (40H)=80HMOV R0,#35H ; R0= 35H3-11设A=83H,R0=17H,片内RAM (17H)=34H, 求指令运行的结果ANL A,#17H ;A=03HORL A,17H ; (17H)=(37HXRL A ,@R0 ; A=37HCPL A ;A=C8H3-12编程实现片内RAM 20H-2FH与30H-3FH中数据的对换ORG 0100HMOV R0,#20HMOV R1,#40HMOV R2,#0FHLOOP: MOV A,@R0MOV @R1,AINC R0INC R1DJNZ R2,LOOPMOV R0,#30HMOV R1,#20HMOV R2,#0FHLOOP1: MOV A,@R0MOV @R1,AINC R0INC R1DJNZ R2,LOOP1MOV R0,#30HMOV R1,#40HMOV R2,#0FHLOOP1: MOV A,@R1MOV @R0,AINC R0INC R1DJNZ R2,LOOP1SJMP $END3-13 A=34H,(30H)=4FH,ADD A,30H执行后的结果A=83H,PSW=41H3-14 SP=25H,PC=2345H,(24H)=12H,(25H)=34H,(26)=56H,执行RET后SP=?PC=?SP=23H,PC=3412H3-15 SP=25H,PC=2345H,标号LABEL所在的地址3456H,执行LCALL LABEL后SP=?PC=?,堆栈中的数据有何变化?SP=27H (26H)=48H (27H)=23H PC=3456H第四章程序设计基础4-1片内RAM 30H单元开始存放着一组用补码表示的有符号数,数目存于20H单元。
编程统计出正数,0,负数的数目,分别存到21H,22H,23H单元。
ORG 0100HMOV 21H,#0MOV 22H,#0MOV 23H,#0MOV R0,#30HLOOP: MOV A,@R0CJNE A,#0 ,PDINC 22HSJMP DONEPD:JB ACC.7,FUINC 21HSJMP DONEFU:INC 23HDONE: INC R0DJNZ 20H,LOOPSJMP $END4-2 片内RAM 20H-2FH.凡是满足奇偶校验的数据(1的个数为偶数)的数转存到片外8000H 开始的数据区ORG 0100HMOV R0,#20HMOV DPTR,#8000HMOV R2,#0FHLOOP: MOV A,@R0JB PSW.0,DONEMOVX @DPTR,AINC DPTRDONE: INC R0DJNZ R2,LOOPSJMP $END4-3 编程,把外部 RAM 1000H-10FFH的数据传送到2000H开始的区域ORG 0100HMOV R3,#10HMOV R4,#20HMOV DPL,#00HMOV R2,#0LOOP:MOV DPH,R3MOVX A,@DPTRMOV DPH,R4MOVX @DPTR,AINC DPLDJNZ R2,LOOPSJMP $END4-4片内RAM 30H单元开始存放着一组无符号数,其数目在21H单元中。
编程将其中最小的数存入21HORG 0100HMOV R0,#30HMOV R2,21HMOV A,30HLOOP: CJNE A,@R0,PDSJMP DONEPD:JNC DONEMOV 22H,@R0XCH A,22HDONE: INC R0DJNZ R2,LOOPMOV 21H,ASJMP $END4-5 编程实现片内RAM 30H单元开始的16个数按顺序颠倒过来ORG 0100HMOV R0,#30HMOV R1,#40HMOV R2,#0FHLOOP:MOV A,@R0MOV @R1,AINC R0INC R1DJNZ R2,LOOPMOV R2,#0FHMOV R0,#40HMOV R1,#3FHLOOP1: MOV A,@R0MOV @R1,AINC R0DEC R1DJNZ R2,LOOP1SJMP $END4-6 编程实现片内RAM 30H单元开始的16个数,存有最小数值的所在单元的内容改为0FFHORG 0100HMOV R0,#30HMOV R2,#16MOV A,30HMOV 22H,#0 ;22H存放找到的16个数中的最小值MOV 23H,#0 ;存放最小数值的地址放到23HLOOP: CJNE A,@R0,PDSJMP DONEPD:JNC DONEMOV 22H, @R0MOV 23H,R0XCH A,22HDONE: INC R0DJNZ R2,LOOPMOV R0,23HMOV @R0,#0FFHSJMP $END4-7 编程实现P1.7=P1.6(P1.5 P1.4)ORG 0100HMOV C,P1.5ANL C,/P1.4MOV 20H,CMOV C,P1.4ANL C,/P1.5ORL C,20HANL C,P1.6MOV P1.7,CEND4-8编程统计片内RAM 30H单元开始的16个数,有多少数大于40,小于80,将结果存入40H单元中ORG 0100HMOV R0,#30HMOV R2,#16MOV 40H,#0LOOP:MOV A,@R0CJNE A,#40,PDSJMP DONEPD:JNC PD2SJMP DONEPD2:CJNE A,#80,PD3SJMP DONEPD3:JC COUNTSJMP DONECOUNT:INC 40HDONE:INC R0DJNZ R2,LOOPSJMP $END第六章中断系统6-1 定时器T0和T1各有几种工作方式?请简述。
答:四种。