单片机原理与应用技术江力版第三四六章答案
- 格式:doc
- 大小:112.50 KB
- 文档页数:9
单片机课后习题答案1.89C51 单片机内包含哪些主要逻辑功能零件?答: 80C51 系列单片机在片内集成了以下主要逻辑功能零件:(l)CPU( 中央办理器 ):8 位 (2)片内 RAM:128B(3) 特别功能寄存器 :21 个 (4)程序储存器 :4KB (5)并行 I/O 口:8 位, 4 个(6)串行接口 :全双工, 1 个(7)准时器 /计数器 :16 位, 2 个(8)片内时钟电路 :1 个2.89C51 的 EA 端有何用途?答: /EA 端接高电平常, CPU 只接见片内 flash Rom并履行内部程序,储存器。
/EA 端接低电平常, CPU 只接见外面 ROM ,并履行片外程序储存器中的指令。
/EA 端保持高电平常, CPU 履行内部储存器中的指令。
3.89C51 的储存器分哪几个空间 ?怎样差异不一样空间的寻址?答:ROM (片内 ROM 和片外 ROM 一致编址)(使用 MOVC )(数据传递指令)(16bits地点)( 64KB)片外 RAM(MOVX )( 16bits地点)( 64KB)片内 RAM (MOV )( 8bits 地点)(256B)4.简述 89C51 片内 RAM 的空间分派。
答:片内 RAM 有 256B,低 128B 是真实的 RAM 区,高 128B 是 SFR(特别功能寄存器)区。
5.简述布尔办理储存器的空间分派,片内RAM 中包含哪些可位寻址单元。
答:片内 RAM 区从 00H~FFH (256B)此中 20H~2FH (字节地点)是位寻址区对应的位地点是00H~7FH6.怎样简捷地判断 89C51 正在工作 ?答:用示波器察看 8051 的 XTAL2 端能否有脉冲信号输出(判断震荡电路工作能否正常?) ALE (地点锁存同意)( Address Latch Enable)输出是 fosc的 6 分频用示波器察看 ALE 能否有脉冲输出(判断8051 芯片的利害?)察看 PSEN(判断 8051 能够到 EPROM 或 ROM 中读取指令码?)因为 /PSEN 接外面 EPROM (ROM )的 /OE 端子 OE=Output Enable (输出同意)7.89C51 怎样确立和改变目前工作寄存器组 ?答: PSW(程序状态字)( Program Status Word)中的 RS1 和 RS0 能够给出 4 中组合,用来从4 组工作寄存器组中进行选择PSW 属于SFR(Special Function Register)(特别功能寄存器)9.读端口锁存器和“读引脚”有何不一样?各使用哪一种指令?答:读锁存器( ANLP0,A )就是相当于从储存器中拿数据,而读引脚是从外面拿数据(如 MOV A,P1 这条指令就是读引脚的,意思就是把端口 p1 输入数据送给A)传递类 MOV ,判位转移 JB、JNB、这些都属于读引脚,平常实验时常常用这些指令于外面通讯,判断外面键盘等;字节互换 XCH 、XCHD 算术及逻辑运算ORL 、CPL 、ANL 、ADD 、ADDC 、SUBB、INC 、DEC 控制转移 CJNE 、DJNZ都属于读锁存器。
《单片机原理与应用开发技术》第四章习题答案(P90-91):4. 每条语句分析如下:POP DPH ;(DPH)=0FFH,(SP)=41HPOP DPL ;(DPL)=0FFH,(SP)=40HMOV DPTR,#3000H ;(DPTR)=3000HRL A ;左移,(A)=04HMOV B,A ;(B)=04HMOVC A,@A+DPTR ;(A)=50HPUSH ACC ;(SP)=41H,(41H)=50HMOV A,B ;(A)=04HINC A ;(A)=05HMOVC A,@A+DPTR ;(A)=80HPUSH ACC ;(SP)=42H,(42H)=80HRET ;(PC15~8)=80H,(SP)=41H,(PC7~0)=50H,(SP)=40H ORG 3000HDB 10H,80H,30H,80H,50H,80H所以,A=80H,SP=40H,(41H)=50H,(42H)=80H,PC=8050H。
8.先把2000H~20FFH(共256个字节单元)内容移至3000H~20FFH处,一共循环了256次,再单独地把2100H内容移至3100H处。
因为前256个单元的源地址和目标地址的高八位都是从20##H移至30##H,所以此时只需要修改低八位即可。
而2100H(共1个字节单元)内容移至3100H,高八位是从21##H 到31##H,单独处理。
DPL EQU 82HDPH EQU 83HMOV R2,#00HMOV DPL,#00HLOOP: MOV DPH,#20H ;移2000H~20FFH内容,共循环256次MOVX A,@DPTRMOV DPH,#30HMOVX @DPTR,AINC DPTRDJNZ R2,LOOPMOV DPTR,#2100H ;单独移动2100H内容至3100HMOVX A,@DPTRMOV DPTR,#3100HMOVX @DPTR,ARET9.MOV R0,#40H ;放首址MOV R2,#0AH ;设置循环次数MOV 30H,#00H ;三个单元内容清零MOV 31H,#00HMOV 32H,#00HSTART: CLR C ;CY位清零CJNE @R0,#00H,LOOP1 INC 30H ;为零,加一SJMP NEXTLOOP1: MOV 2FH,@R0JB 7FH,LOOP2INC 31H ;CY=0,正数,加一SJMP NEXTLOOP2: INC 32H ;CY=1,负数,加一NEXT: INC R0 ;下一个数DJNZ R2,STARTRET。
单片机技术与应用各章习题答案第一章:单片机概述与应用领域1. 单片机是指在一个芯片上集成了微处理器核心、存储器和各种外设接口电路的微型计算机系统。
它具有体积小、功耗低、成本低等特点,广泛应用于各个领域。
2. 单片机的分类有多种方式,按照处理器核心可以分为8位、16位和32位单片机;按照指令集结构可以分为CISC和RISC单片机;按照应用领域可以分为通用型和专用型单片机等。
3. 单片机在工业控制、汽车电子、消费电子、通信设备等领域有着广泛应用。
例如,它可以运用于家电控制、智能家居、无人机控制等领域。
4. 单片机系统由单片机核心、存储器、外设接口电路和时钟电路等部分组成。
其中,单片机核心是整个系统的核心和控制中心。
第二章:单片机的基本结构与指令系统5. 单片机的基本结构包括中央处理器(CPU)、存储器(存储程序和数据)、输入输出(I/O)端口和计时/计数器等。
它们通过总线进行连接和数据传输。
6. 单片机的指令系统决定了其工作方式和功能。
指令由操作码和操作数组成,用于完成特定的指令功能。
7. 单片机的指令系统可以分为数据传输指令、算术运算指令、逻辑运算指令、移位指令等。
不同的指令功能可以通过编程实现。
8. 单片机的程序是由一系列指令组成,按照指令执行的顺序顺序执行。
其中,程序计数器(PC)用于存储当前执行的指令地址。
第三章:单片机的输入输出与中断系统9. 单片机的输入输出包括数字输入输出和模拟输入输出两种方式。
数字输入输出使用端口进行数据传输,而模拟输入输出则需要辅助模块进行处理。
10. 单片机的中断系统是为了实现对外部事件的响应而设计的。
当发生特定的中断事件时,单片机可以暂停当前任务,执行相应的中断服务程序。
11. 单片机的端口是实现输入输出的重要接口。
输入端口用于接收外部信号,输出端口用于向外部设备发送信号。
12. 单片机的中断是通过中断向量表实现的。
中断向量表是一个存储特定中断服务程序地址的表格,通过查表可以找到相应的服务程序。
单片机原理与应用技术智慧树知到课后章节答案2023年下临沂大学临沂大学第一章测试1.单片机是一种CPU。
答案:错2.单片机内部数据之所以用二进制形式表示,主要是()。
答案:受器件的物理性能限制3.在家用电器中使用单片机应属于微计算机的()。
答案:测量、控制应用4.下面的哪一项应用,不属于单片机的应用范围。
()答案:数据库管理5.在微型计算机中,负数常用()表示。
答案:补码6.数123可能是()。
答案:四进制数 ;十六进制数 ;十进制数;八进制数7.单片机的发展历程大概经历了4个阶段。
答案:对8.CPU一次可以处理的二进制的位数称为CPU的位。
答案:对9.单片机是微型计算机的一个分支。
答案:对第二章测试1.MCS-51单片机是16位单片机。
答案:错2.MCS-51单片机的CPU主要的组成部分为()。
答案:运算器、控制器3.单片机中的程序计数器PC用来()。
答案:存放下一条指令地址4.单片机上电复位后,PC的内容和SP的内容为()。
答案:0000H,07H5.51单片机()口是一个带内部上拉电阻的位双向I/O口。
答案:P2 ;P3;P16.单片机中用来选择通用工作寄存器区号的PSW中的()。
答案:RS1 ;RS07.51的存贮器配置在物理结构上有四个存储空间,它们是:()。
答案:片内数据存贮器;片外数据存贮器;片外程序存贮器 ;片内程序存贮器8.累加器ACC是一个8位的寄存器,简称为A,用来存一个操作数或中间结果。
答案:对9.MCS-51的程序存贮器用于存放运算中间结果。
错10.单片机的复位有上电自动复位和按钮手动复位两种,当单片机运行出错或进入死循环时,可按复位键重新启动。
答案:对第三章测试1.MCS-51指令中,MOVX为片外RAM传送指令。
答案:对2.MCS-51指令系统中,指令JNB bit,rel是判位转移指令,即表示bit=1时转。
答案:错3.CS-51汇编语言指令格式中,唯一不可缺少的部分是()。
《单片机原理及应用程序》(第三版)习题参考答案第一章1. 为什么计算机要采用二进制数?学习十六进制数的目的是什么?在计算机中,由于所采用的电子逻辑器件仅能存储和识别两种状态的特点,计算机内部一切信息存储、处理和传送均采用二进制数的形式。
可以说,二进制数是计算机硬件能直接识别并进行处理的惟一形式。
十六进制数可以简化表示二进制数。
2.(1) 01111001 79H (2) 0.11 0.CH (3) 01111001.11 79.CH(4) 11101010.101 0EA.AH (5)01100001 61H (6) 00110001 31H3.(1) 0B3H (2)80H (3) 17.AH (4) 0C.CH4.(1)01000001B 65 (2) 110101111B 4315.(1) 00100100 00100100 00100100 (2) 10100100 11011011 11011100(5) 10000001 11111110 111111116.00100101B 00110111BCD 25H7. 137 119 898.什么是总线?总线主要有哪几部分组成?各部分的作用是什么?总线是连接计算机各部件之间的一组公共的信号线。
一般情况下,可分为系统总线和外总线。
系统总线应包括:地址总线(AB)控制总线(CB)数据总线(DB)地址总线(AB):CPU根据指令的功能需要访问某一存储器单元或外部设备时,其地址信息由地址总线输出,然后经地址译码单元处理。
地址总线为16位时,可寻址范围为216=64K,地址总线的位数决定了所寻址存储器容量或外设数量的范围。
在任一时刻,地址总线上的地址信息是惟一对应某一存储单元或外部设备。
控制总线(CB):由CPU产生的控制信号是通过控制总线向存储器或外部设备发出控制命令的,以使在传送信息时协调一致的工作。
CPU还可以接收由外部设备发来的中断请求信号和状态信号,所以控制总线可以是输入、输出或双向的。
第六章作业(1)判断下列说法是否正确?特殊功能寄存器SCON,与定时器/计数器的控制无关。
()特殊功能寄存器TCON,与定时器/计数器的控制无关。
()特殊功能寄存器IE,与定时器/计数器的控制无关。
()特殊功能寄存器TMOD,与定时器/计数器的控制无关。
()(2)如果晶振的频率为3MHz,定时器/计数器工作在方式0、1、2下,其最大的定时时间各为多少?(3)定时器/计数器用作定时器时,其计数脉冲由谁提供?定时时间与哪些因素有关?(4)定时器/计数器作计数器模式使用时,对外界计数频率有何限制?(5)定时器/计数器的工作方式2有什么特点?适用于什么应用场合?(6)一个定时器的定时时间有限,如何实现两个定时器的串行定时,来实现较长时间的定时?(7)定时器/计数器测量某正单脉冲的宽度,采用何种方式可得到最大量程?若时钟频率为6MHz,求允许测量的最大脉冲宽度是多少?(8)设定1ms的定时,可以在P1.0引脚上产生周期为2ms的方波输出,设晶体振荡器的频率为6MHz,分别写出在方式0和方式1时,赋给T0的常数。
(9) 把显示“L2H3”的例题改编成,刚上电时,显示“H3”,间隔1s后,显示“L2”,再过1s后,显示“H3”,依次类推。
要求用定时/计数器的中断和查询2种方式现实。
(10) 把显示“L2H3”的例题改编成秒表,用一个按键控制,按键采用中断方式,间隔1s显示时间,显示到99后,循环从“00”再开始。
注:第九、第十题作为上机题目附录2:作业及答案(1)判断下列说法是否正确?特殊功能寄存器SCON,与定时器/计数器的控制无关。
(对)特殊功能寄存器TCON,与定时器/计数器的控制无关。
(错)特殊功能寄存器IE,与定时器/计数器的控制无关。
(错)特殊功能寄存器TMOD,与定时器/计数器的控制无关。
(错)(2)如果晶振的频率为3MHz,定时器/计数器工作在方式0、1、2下,其最大的定时时间各为多少?方式0:t=(8192-初值)×(1/3)×12=8192=32768µs=32.768 ms。
单片机原理及应用第三章习题答案第一题:题目:什么是中断?中断是指在程序执行过程中,由于发生了某个特定事件,导致当前的程序需要暂时中断执行,转而去处理其他紧急或优先级更高的事件。
中断可以提高系统的实时性和响应速度。
第二题:题目:请简述中断的分类及其优缺点。
中断可以分为外部中断和内部中断。
外部中断:外部中断是通过外部设备触发的中断,例如按键输入、定时器溢出等。
外部中断的优点是能够及时响应外部事件,缺点是响应时间有一定延迟,并且可能会引起系统的不稳定性。
内部中断:内部中断是通过程序内部指令触发的中断,例如软件中断、硬件错误等。
内部中断的优点是响应时间几乎可以忽略,缺点是需要消耗较多的系统资源。
第三题:题目:简述中断的处理过程。
中断的处理过程一般包括以下几个步骤:1. 中断请求发生:外部设备或程序内部触发中断请求。
2. 中断响应:CPU接收到中断请求后,保存当前程序的执行状态,暂停当前程序的执行,并跳转到中断服务程序。
3. 中断服务程序执行:中断服务程序是为了处理中断事件而编写的程序,它会根据中断类型执行相应的操作,例如处理外部设备的输入、更新系统状态等。
4. 中断处理完成:中断服务程序执行完后,将恢复之前保存的执行状态,继续执行被中断的程序。
第四题:题目:请简述常见的中断优先级判断方式。
常见的中断优先级判断方式有两种:硬件优先级判断和软件优先级判断。
硬件优先级判断:硬件优先级判断是通过硬件电路来实现的,每个中断信号都有一个对应的硬件中断优先级,优先级高的中断信号将打断当前正在执行的中断信号。
软件优先级判断:软件优先级判断是通过编程的方式来实现的,每个中断信号都有一个对应的中断优先级,在中断服务程序中通过程序代码来判断当前是否有更高优先级的中断请求。
第五题:题目:请说明中断向量表的作用。
中断向量表是一个存储中断处理程序入口地址的数据结构,它将每个中断编号与对应的中断服务程序的入口地址进行映射。
当一个中断请求发生时,中断向量表将根据中断编号找到对应的中断服务程序的入口地址,从而实现中断的处理。
页1第一章单片机概述1.2 除了单片机这一名称之外,单片机还可称为(微控制器)和(嵌入式控制器)。
1.3 单片机与普通计算机的不同之处在于其将(微处理器)、(存储器)和(各种输入输出接口)三部分集成于一块芯片上。
4、单片机的发展大致分为哪几个阶段?答:单片机的发展历史可分为四个阶段:第一阶段(1974 年----1976 年):单片机初级阶段。
第二阶段(1976 年----1978 年):低性能单片机阶段。
第三阶段(1978 年----现在):高性能单片机阶段。
第四阶段(1982 年----现在):8 位单片机巩固发展及16 位单片机、32 位单片机推出阶段1.5 单片机根据其基本操作处理的位数可分为哪几种类型?答:单片机根据其基本操作处理的位数可分为:1 位单片机、4 位单片机、8 位单片机、16 位单片机和32 位单片机。
1.6 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 的小系统。
用户可以将程序固化在EPROM 中,可以反复修改程序。
1.7 MCS-51 系列单片机与80C51 系列单片机的异同点是什么?答:共同点为它们的指令系统相互兼容。
不同点在于MCS-51 是基本型,而80C51 采用CMOS 工艺,功耗很低,有两种掉电工作方式,一种是CPU 停止工作,其它部分仍继续工作;另一种是,除片内RAM 继续保持数据外,其它部分都停止工作。
《单片机原理及应用(第 3 版)》习题参考答案姜志海黄玉清刘连鑫编著电子工业出版社目录第1 章概述. (2)第2 章MCS 51 系列单片机硬件结构 (4)第3 章MCS 51 系列单片机指令系统 (8)第4 章MCS 51 系列单片机汇编语言程序设计 (11)第5 章MCS 51 系列单片机硬件资源的应用 (16)第6 章MCS 51 系列单片机并行扩展接口技术 (20)第7 章MCS 51 系列单片机串行总线扩展技术 (25)第8 章单片机应用系统设计 (27)第1 章概述1.简述微型计算机的结构及各部分的作用微型计算机在硬件上由运算器、控制器、存储器、输入设备及输出设备五大部分组成。
运算器是计算机处理信息的主要部分;控制器控制计算机各部件自动地、协调一致地工作;存储器是存放数据与程序的部件;输入设备用来输入数据与程序;输出设备将计算机的处理结果用数字、图形等形式表示出来。
通常把运算器、控制器、存储器这三部分称为计算机的主机,而输入、输出设备则称为计算机的外部设备(简称外设)。
由于运算器、控制器是计算机处理信息的关键部件,所以常将它们合称为中央处理单元CPU(Central Process Unit )。
2.微处理器、微型计算机、微型计算机系统有什么联系与区别?微处理器是利用微电子技术将计算机的核心部件(运算器和控制器)集中做在一块集成电路上的一个独立芯片。
它具有解释指令、执行指令和与外界交换数据的能力。
其内部包括三部分:运算器、控制器、内部寄存器阵列(工作寄存器组)。
微型计算机由CPU、存储器、输入/ 输出(I/O )接口电路构成,各部分芯片之间通过总线(Bus)连接。
以微型计算机为主体,配上外部输入/ 输出设备、电源、系统软件一起构成应用系统,称为微型计算机系统。
3.简述在微型计算机中的地址总线、数据总线和控制总线的作用。
所谓总线,就是在微型计算机各芯片之间或芯片内部各部件之间传输信息的一组公共通信线。
第一章习题参考答案1-1 :何谓单片机?与通用微机相比,两者在结构上有何异同? 答:将构成计算机的基本单元电路如微处理器(CPU )、存储器、I/O 接口电路和相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。
单片机与通用微机相比在结构上的异同: (1)两者都有 CPU ,但通用微机的 CPU 主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的进一步提高。
例如,现今微机的 CPU 都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache )技术等。
CPU 的主频达到数百兆赫兹(MHz ),字长普遍达到32位。
单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据 处理功能比通用微机相对要弱一些, 产品的CPU 大多不支持浮点运算, 围内;在一些简单应用系统中采用长单片机,在一些复杂的中、大规模的应用系统中才采用 品目前应用得还不多。
(2) 两者都有存储器, 但通用微机中存储器组织结构主要针对增大存储容量和 存取速度。
现今微机的内存容量达到了数百兆字节 (MB ),存储体系采用多体、 页等多种管理模式。
单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU 对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都 为 64 KB 。
⑶两者都有I/O 接口,但通用微机中 标、打印机、硬盘、光盘等 系统的外设都是非标准的, 的与外设连接的物理界面。
设计技术。
另外,单片机的微处理器 机的微处理器(CPU )、存储器、1- 4 IAP 、ISP 的含义是什么?ISP : In System Programable ,即在系统编程。
用户可以通过下载线以特定的硬件时序 在线编程(到单片机内部集成的FLASH 上),但用户程序自身不可以对内部存储器做修改。
IAP:In Applicatio nProgramable ,即在应用编程。
第三章作业参考答案3-10. 己知(A)=7AH,(R0)=34H,(34H)=A5H,请写出分别执行下面各条指令后累加器A的内容。
(1) MOV A,R0 ;(A)=34H(2) MOV A,@R0 ;(A)=A5H(3) MOV A,34H ;(A)=A5H(4) MOV A,#34H ;(A)=34H3-12. 1设(R0)=32H,(A)=48H,片内RAM中(32H)=60H,(40H)=61H。
请指出在执行下列程序段后上述各单元内容的变化。
MOV A,@R0 ; (A)=(32H)=60HMOV @R0,40H ; (32H)=61HMOV 40H,A ; (40H)=(A)=60HMOV R0,#40H ; (R0)=40H即:执行完程序段后,(R0)=40H, (A)=60H, 片内RAM中,(32H)=61H, (40H)=60H3-13已知(A)=83H,(R0)=47H,(47H)=34H。
请写出执行完下列程序段后A的内容。
ANL A,47H ;(A)=83H∧34H=00HORL 47H,A ;(47H)=34H∨00H=34HXRL A,@R0 ;(A)=00H34H=34HSWAP A ;(A)=43H答:执行完程序段后,(A)=43H3-14 14. 说明下段程序执行过程中,SP的内容及堆栈中内容的改变过程。
MOV SP,#30H ;(SP)=30HMOV 30H,#55HMOV 40H,#66HPUSH 30H ;(SP)=31H, 堆栈区中(31H)=55HPUSH 40H ;(SP)=32H, 堆栈区中(32H)=66HPOP 30H ;先将堆栈区中32H单元的内容送入30H单元,使(30H)=66H, 再使;SP值减1,即: (SP)=31HPOP 40H ;先将堆栈区中31H单元的内容送入40H单元,使(40H)=55H, 再使;SP值减1,即: (SP)=30H最终,(SP)=30H, 内部RAM中,(30H)=66H, (40H)=55H.3-15编程实现两个16位二进制数的减法。
设被减数放在40H、41H单元中,减数放在50H、51H 单元,差仍存于被减数地址单元中,减数、被减数都是低地址单元存放低8位。
解:CLC CMOV A, 40HSUBB A, 50HMOV 40H, AMOV A, 41HSUBB A, 51HMOV 41H,A3-16.编写一BCD码拼字程序,将存放在40H、41H单元的两个一位十进制数的BCD码合并构成一个字节的压缩BCD码,并将结果保存在42H单元中(高地址单元的BCD码放在高4位)。
分析:设(40H)=XYH, (41H)=WZH, 则,合并结果为(42H)=ZYH, X,Y,W,Z取值0~9.解:MOV A, 40HANL A,#0FHMOV B, AMOV A,41HANL A, #0FH SWAP A ORL A, B MOV 42H, A3-17. 把片外数据存储器4020H 单元中的数据读到累加器中,应用哪几条指令? 解:方法1: MOV DPTR, #4020H 方法2: MOV P2, #40H MOVX A, @DPTR MOV R0, #20H MOVX A, @R0 3-18. 试编写程序将外部RAM 5000H 单元内容传送至外部RAM 6030H 单元。
解: MOV DPTR, #5000H MOVX A , @DPTR MOV DPTR, #6030H MOVX @DPTR, A3-20. 试编写一段程序,将累加器A 的高4位由P1口的高4位输出,P1口低4位保持不变。
分析: 设(A)=XYH, (P1)=WZH, 则执行结果为: (P1)=XZH, 解: ANL A, #0F0H ;(A)=X0H ANL P1,#0FH ;(P1)=0ZH ORL P1, A ;(P1)=XZH21. 试编写一段程序,将P1口的高5位置位,低3位不变。
ORL P1, #11111000B 或 ORL P1, #0F8H25. 使用位操作指令实现下列逻辑关系。
(1) P1.0=(10H ∨Pl.1)∧(ACC.0∨CY) (2) P1.3=(ACC.2∧P1.0)⊕(ACC.1∨P1.1) 解:(1) ORL C, ACC.0 MOV F0, C ;令 F0=ACC.0∨CY MOV C, 10H ;注意 此处的10H 是一个位地址而非字节地址 ORL C, P1.1 ;令 CY=(10H) ∨Pl.1 ANL C, F0 ;令CY=(10H) ∨Pl.1)∧(ACC.0∨CY) MOV P1.0, C (2) MOV C, ACC.2 ANL C, P1.0 MOV 20H, C ;令20H=(ACC.2∧P1.0) MOV C, ACC.1 ORL C, P1.1 ;令 CY=(ACC.1∨P1.1) ;位指令中没有XRL 指令,只能用X Y XY XY ⊕=+但可利用“”来形成异或运算, MOV 21H, C ;令21H= (ACC.1∨P1.1) ANL C, /20H MOV F0,C MOV C,20H ANL C, /21HORL C, F0 ; 令C=(ACC.2∧P1.0)⊕(ACC.1∨P1.1) MOV P1.3, C26. 试编程将内部RAM 30H ~3FH 单元中的内容全部清0(利用循环转移指令)。
解: MOV R0,#30H MOV R7,#10H ; 30H~3FH 共10H 个数据 LOOP: MOV @R0, #00HDJNZ R7, LOOP27. 在程序存储器中有一个常数表,从2040H 单元开始分别存放表格的第0项、第1项……第n 项,试编程查出表格第m 项的内容。
解: MOV DPTR,#2040H MOV A, #m MOVC A, @A+DPTR第4章 作业参考答案5. 有两个4位十六进制数分别存放在片内RAM 20H 、21H 单元和30H 、31H 单元内,请编程求它们 的和,并将和存放到片内RAM 40H 、41H 单元。
6. 有一个16位二进制负数的原码存放在片内RAM 60H 、61H 单元内,请编程求它的补码,并将它存放到片内RAM 70H 、71H 单元。
解:5. 设20H 、30H 存放高字节 MOV A,21H ADD A,31HMOV 41H,AMOV A,20HADDC A,30HMOV 40H,AEND7. 片内RAM 中存放有20个数据,首地址为40H ,请编程将数据块传送到片外RAM 以50H 为首地址的存储单元中。
解: (编程1) MOV R7,#20 MOV R0,#40H MOV R1,#50H MOV P2,#00H LOOP: MOV A,@R0 MOVX @R1,A INC R0 INC R1 DJNZ R7,LOOP END8. 片外RAM 中存放有20个数据,首地址为40H ,请编程将数据块传送到片外RAM 以5000H 为首地址的存储单元中,同时将片外RAM 以40H 为首地址的20个存储单元中的内容全清零。
解:MOV R7,#20 MOV P2,#00H MOV R0,#40H MOV DPTR,#5000HLOOP: MOVX A,@R0 ;从源区取数据 MOVX @DPTR,A ; 送入目的区 CLR A MOVX @R0,A ;将源区当前单元内容清06. MOV A,61H CPL A ADD A,#1MOV 71H,A ;低字节取反加1 MOV A,60H CPL A ADDC A,#00H ;高字节取反加上进位位SETB ACC.7 ;高字节的符号位一定为1MOV 70H,AEND (编程2) MOV R7,#20 MOV R0,#40H MOV DPTR,#0050H LOOP: MOV A,@R0 MOVX @DPTR,A INC R0 INC DPTR DJNZ R7,LOOP ENDINC DPTR ;修改源区和目的区的地址DJNZ R7,LOOPEND10. 请分别编写延时1 min、1 h的子程序,晶振频率12MHz。
解:设1min 延时子程序、1h延时子程序的名字分别为DELAY1, DELAY2DELAY1:MOV R7,#250DL2: MOV R5,#240DL3: NOPNOPDJNZ R5,DL3DJNZ R6,DL2DJNZ R7,DL1RET; 延时时间=[250×250*(1+1+2)*240]*1μs=1minDELAY2: MOV R1,#60LOOP: ACALL DELAY1DJNZ R1,LOOPRET;通过调用1min 延时子程序60次,达到1h 延时。
11. 自变量X为一无符号数,存放在片内RAM区30H单元,函数Y存放在31H单元。
请编写满足如下关系的程序:X≤95时,Y=1;95<X<105时,Y=2;X≥105时,Y=3。
解:MOV A, 30HCJNE A,#96,NEXT1NEXT1: JNC NEXT2 ;X>95,则转至NEXT2MOV 31H,#1 ;X≤95,则令Y=1SJMP DONENEXT2: CJNE A,#105,NEXT3NEXT3: JNC NEXT4 ;X≥105, 则转至NEXT4MOV 31H,#2 ; 95<X<105时,则令Y=2SJMP DONENEXT4: MOV 31H,#3 ; X≥105时,令Y=3DONE: SJMP $END13. 编写双字节无符号数加法子程序。
解: 设子程序的入口参数为:(R0)=被加数低字节地址指针,(R1)=加数低字节地址指针出口参数为:(R0)=和的高字节地址指针参考程序如下:ADD_SUB: MOV A,@R0ADD A,@R1MOV @R0, AINC R0INC R1MOV A,@R0ADDC A,@R1MOV @R0,AINC R0CLR AADDC A, #0MOV @R0, ARET第六章作业参考答案1.(略)3. 当定时器/计数器工作于方式0时,晶振频率为12MHz,请计算最小定时时间、最大定时时间、最小计数值和最大计数值。
答:当fosc=12MHz时,T机=1μs,对于方式0,最小定时时间为1μs,最大定时时间为8192μs,最小计数值为1,最大计数值为8192。
(补充说明,如果工作于方式1,则相应的最小定时时间、最大定时时间、最小计数值和最大计数值分别为1μs,65536μs, 1, 65536。
)4.(略)7. 用方式0设计两个不同频率的方波,P1.0输出频率为200Hz,P1.1输出频率为100Hz,晶振频率12MHz。