51作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1微机基本概念
1.1什么是单片机?与通用微机相比,具有哪些特点?
1.2在各种系列的单片机中,片内ROM的配置有几种形式?用户应根据什么原则来选用?
2MCS-51系列单片机概述
2.18051单片机片内包含哪些主要组成部分?
2.2PC是什么寄存器?有何作用?是否属于SFR?
2.3DPTR是什么寄存器?有何作用?是否属于SFR?
2.4MCS-51系列单片机有哪几个并行I/O口?各有什么特性?
2.5MCS-51系列单片机的时钟周期、机器周期、指令周期是如何分配的?当晶振频率为6MHz
时,一个机器周期为多少us?
2.6ALE信号有何功用?一般情况下它与机器周期的关系如何?在什么条件下ALE信号可用
作外部设备的定时信号?
2.7有哪几种方法能使单片机复位?复位后各寄存器和RAM的影响如何?
3指令系统和汇编语言程序设计
3.1MCS-51系列单片机存储器的组织结构是怎样的?片内数据存储器分为哪几个性质和用途
不同的区域?
3.2EA/V PP引脚有何功用?8031的EA引脚应如何处理?为什么?
3.3MCS-51系列单片机如何确定和改变当前工作寄存器?
3.4MCS-51系列单片机指令系统有哪几种寻址方式?举例说明。
3.5访问片内RAM和片外RAM,各应采用哪些寻址方式?
3.6MCS-51系列单片机指令系统包含哪几大类指令?各有何用处?
3.7请用数据传送指令来实现下列要求的数据传送
1)R0的内容传送到R1中
2)片内RAM 20H单元的内容传送到A中
3)片外RAM 30H单元的内容传送到R0中
4)片外RAM 30H单元的内容传送到片内RAM 20H单元中
5)片外RAM 1000H单元的内容传送到片内RAM 20H单元中
6)ROM 2000H单元的内容传送到R1中
7)ROM 2000H单元的内容传送到片内RAM 20H单元中
8)ROM 2000H单元的内容传送到片外RAM 30H单元中
9)ROM 2000H单元的内容传送到片外RAM 1000H单元中
3.8设(A)=0FH,(R0)=30H,片内RAM (30H)=0AH、(31H)=0BH、(32H)=0CH,执行下列程序
后各单元内容如何变化?
MOV A,@R0
MOV @R0,32H
MOV 32H,A
MOV R0,#31H
MOV A,@R0
3.9设片内RAM (30H)=5AH,(5AH)=40H,(40H)=00H,并口(P1)=7FH,执行下列程序后R0、
R1、A、B、P1、片内RAM 40H、30H、5AH单元的内容如何?
MOV R0,#30H
MOV A,@R0
1
MOV @R0,A
MOV @R1,P1
MOV A,P1
MOV 40H,#20H
MOV 30H,40H
3.10设(A)=5AH,(R1)=30H,(30H)=E0H,(C)=1。分析下列各指令执行后A的内容以及对标志
位的影响。
1)XCH A,R1
2)XCH A,30H
3)XCH A,@R1
4)XCHD A,@R1
5)SWAP A
6)ADD A,R1
7)ADD A,30H
8)ADD A,#30H
9)ADDC A,30H
10)INC A
11)SUBB A,30H
12)SUBB A,#30H
13)DEC A
14)RL A
15)RLC A
16)CPL A
17)CLR A
18)ANL A,30H
19)ORL A,@R1
20)ORL A,#30H
3.11分析下列各段程序中每条指令的执行结果。
1)MOV SP,#50H
MOV A,#0F0H
MOV B,#0FH
PUSH A
PUSH B
POP B
POP A
2)MOV A,#30H
MOV B,#0AFH
MOV R0,#31H
MOV 31H,#87H
XCHD A,@R0
XCH A,B
2
3
3) MOV A,#45H
MOV R5,#78H
ADD A,R5
DA A
MOV 30H,A
4) MOV A,#83H
MOV R0,#47H
MOV 47H,#34H
ANL A,#47H
ORL 47H,A
XRL A,@R0
3.12 对下列程序进行手工汇编。
ORG 1000H
CLR A
MOV R0,#20H
LOOP: CJNE @R0,#24H,NEXT
SJMP QUIT
NEXT: INC A
INC R0
SJMP LOOP
QUIT: MOV R1,A
HALT: SJMP HALT
END
3.13 SJMP 指令和AJMP 指令都是2字节转移指令,它们有何区别?各自的转移范围是多少?
能否用AJMP 指令代替程序中所有的SJMP 指令?为什么?
3.14 设51的晶振频率为6MHz ,试用循环转移指令编写延时20ms 的延时子程序。
3.15 试编写程序,将片内RAM 20H~2FH 单元清零。
3.16 试编写程序,求片内RAM 20H 单元中“1”的个数,并将结果存入21H 单元。
3.17 试编写程序,查找在片内RAM 30H~50H 单元中出现“FFH ”的个数,并将结果存入51H
单元。
3.18 试编写程序,计算∑=10
1i i ,并将结果存入片内RAM 30H 单元。
3.19 从片内RAM 30H 单元开始存放一组无符号数,其数目已存放在21H 单元。编写程序求出
最小数,并将其存入20H 单元。
3.20 从片内RAM 30H 单元开始存放一组用补码表示的带符号数,其数目已存放在20H 单元。
编写程序统计出其中正数、0和负数的数目,并将结果分别存入21H 、22H 、23H 单元。
3.21 片内RAM 有一数据块,存放在20H~2FH 单元中。要求对这些数据进行奇偶校验,凡满足
偶校验的数据(1的数目为偶数个)都要转存到片外RAM 8000H 开始的数据区中。试编写有关程序。
3.22 编写程序,将片外RAM 1001H~10FFH 区域内的数据逐个搬到2001H 开始的区域。
3.23 用软件实现逻辑函数F=X Y W+XYZ XYZW +的功能,其中F 、W 、X 、Y 、Z 均为位变量。