单片机原理与应用_戴胜华_课后答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机作业答案
-------------------------------------------------------------
第二章
1、MCS-51系列单片机内部有哪些主要的逻辑部件?P10
答:MCS-51系列单片机内部的逻辑部件主要有:算术/逻辑部件ALU、累加器A、只读存储器ROM、随机存储器RAM、指令寄存器IR、程序计数器PC、定时器/计数器、I/O 接口电路、程序状态寄存器PSW、寄存器组。
3、MCS-51内部RAM区功能如何分配?如何选用4组工作寄存器中的一组作为当前的工作寄存器组?位寻址区域的字节地址范围是多少?P13-P15
答:MCS-51内部RAM的地址空间为00H-7FH,128B,按功能分为3个区域。00H-1FH 的32B单元是4个工作寄存器组,单片机执行程序时,具体使用哪一组是通过对PSW 的RS1、RS0两位的设置来实现;20H-2FH的16B共128位,是可以按位寻址的内部RAM 区;30H-7FH的80B单元是只能按字节寻址的内部RAM区。
5、8031设有4个8位并行端口,若实际应用8位I/O口,应使用P0-P3中的哪个端口传送?16位地址如何形成?P19-P21
答:
P1口是专门供用户使用的I/O口,是准双向接口,故可以使用P1口传送;
P0口既可作地址/数据总线使用,又可作通用I/O使用。一方面用来输出外部存储器或I/O的低8位地址,另一方面作为8位数据输入/输出口,故由P0口输出16位地址的低8位;
P2口可作通用I/O口使用,与P1口相同。当外接存储器或I/O时,P2口给出地址的高8位,故P2口输出16位地址的高8位。
8、MCS-51的时钟周期、机器周期、指令周期是如何分配的?当振荡频率为10MHz时,
一个机器周期为多少微妙?P25
答:CPU执行一条指令的时间称为指令周期,它是以机器周期为单位的。MCS-51典型的指令周期为一个机器周期,每个机器周期由6个状态周期组成,每个状态周期由2个时钟周期(振荡周期)组成。
当振荡频率为10MHz时,一个机器周期为12/10M Hz=1.2us。
9、在MCS-51扩展系统中,片外程序存储器和片外数据存储器地址一样时,为什么不会发生冲突?P12;P13、P18
答:1、程序存储器和数据存储器物理上是独立的,寻址片外程序存储器和片外数据存储器的寻址方式、寻址空间和控制信号不同。
2、对外部程序存储器访问使用MOVC指令;对外部数据存储器访问使用MOVX指令。
10、MCS-51的P3口具有哪些第二种功能?P19表2-6
答:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)
P3.2 INT0(外部中断0)P3.3 INT(外部中断1)
P3.4 T0(定时器0外部中断)P3.5 T1(定时器1外部中断)
P3.6 WR(外部数据存储器写信号)P3.7 RD(外部数据存储器读信号)
11、位地址7CH与字节地址7CH有哪些区别?位地址7CH具体在内存中什么位置?P14 答:位地址7CH与字节地址7CH在RAM中的位置不同,寻址方式也不用。位地址7CH 在内部RAM区2FH中,可以位寻址;字节地址7CH在用户区中,只能按字节寻址。
第三章
2、什么是寻址方式?MCS-51单片机有哪几种寻址方式?P36
答:寻址方式是指令中确定操作数的形式。MSC-51单片机有立即数寻址、直接寻址、寄存器寻址、寄存器间接寻址、变址寻址、相对寻址、位寻址。
3、指出下列指令中画线的操作数的寻址方式?P36
MOV R0, #55H ;立即寻址
MOV A, 2AH ;直接寻址
MOV A, @R1 ;寄存器间接寻址
MOV @R0, A ;寄存器寻址
DIV A, B ;寄存器寻址
ADD A, R7 ;寄存器寻址
MOVX A, @DPTR ;寄存器间接寻址
MOV DPTR, #0123H ;立即寻址
MOVC A, @A+DPTR ;基址加变址寻址
INC DPTR ;寄存器寻址
7、为什么要进行十进制调整?调整方法是什么?P49
答:十进制表示用BCD码规则,相加大于10进位;运算用二进制规则,相加大于16进位。所以要进行十进制调整。调整方法:数的低四位大于9或标志位AC=1,则低四位加06H调整。高四位大于9或标志位CY=1则高四位加60H。
8、编程实现两个一字节压缩型BCD码的减法。设被减数地址在R0中,减数地址在R1中,差仍存于被减数地址单元中。?
答:CLR C
MOV A,#9AH
SUBB A,@R1
ADD A,@R0
DA A
MOV @R0,A
9、把片外数据存储器8000H单元中的数据读到累加器中,应用哪几条指令?P45例3.7
答:MOV DPTR, #8000H
MOV A, @DPTR
10、已知内部RAM中,(A) =35H,(R0) =6FH,(P1) =0FCH,(SP) =0C0H。分别写出下列各条指令的执行结果。P41-
(1) MOV R0, A ;(R0)=35H P41(2)
(2) MOV @R0, A ;(6FH)=35H P42(4)
(3) MOV A, #90H ;(A)=90H P41(1)
(4) MOV A, 90H ;(A)=(90H) P41(1)
(5) MOV 80H, #81H ;(80H)=81H P42(3)
(6) MOVX @R0, A ;(6FH)=35H P45 2
(7) PUSH A ;(0C1H)=35H,(SP)=0C1H P43(6)
(8) SWAP A ;(A)=53H P44(8)
(9) XCH A, R0 ;(A)=6FH,(R0)=35H P44(7)
第四章
2、在汇编语言程序设计中,为什么要采用标号来表示地址?标号的构成原则是什么?使用标号有什么限制?注释段起什么作用?P69
答:采用标号便于在编写程序时,实现跳转、循环等程序控制转移。
标号位于语句的开始,由以字母开头的字母和数字组成,它代表语句的地址。标号与指令间要用冒号“:”分开,标号与“:”之间不能有空格,“:”与操作码之间可以有空格。注释段放在语句的最后,以冒号开始,为不可执行部分,对程序进行解释性说明。3、MCS-51汇编语言有哪几条常用的伪指令?各起什么作用?P70-P72
答:MCS-51汇编语言有以下常用的伪指令: