微机原理习题答案参考(给学生)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理习题答案参考
第一章微处理机概述
根据自己原来的电路基础,自选第一章部分习题作为作业。
第二章51单片机硬件结构
习题:2-8,2-12,2-14思考题:2-3,2-6,2-10,2-11,2-16
补充题:
1、MCS-51单片机由哪几部分功能模块组成?
2、概述MCS-51单片机的引脚功能,以及三总线的组成。
3、请叙述51单片机I/O口的应用特性。
1、习题2-8简述MCS-51的片内数据存储器的分区特点。(P38-40)
2、习题2-12简述PSW中各位的意义。(P33)
3、习题2-14简述指令执行中的四种周期及其意义。(振荡周期、状态周期、机器周期、指令周期。P45-46)
4、思考题2-3 51子系列和52子系列的片内资源有何区别?(P31)
5、思考题2-6 8051单片机的片内数据和程序存储器寻址范围各是多少?(P31)
6、思考题2-10 MCS-51中有多少SFR,它们是怎样分布的?(P41)
7、思考题2-11谈谈MCS-51是怎么避免存储空间重叠而产生数据冲突的?(P36)
8、思考题2-16为什么要复位?MCS-51有哪些复位电路?复位后SFR的值各为多少?(P44~45)
9、补充题1 MCS-51单片机由哪几部分功能模块组成?(P31 2.3.1硬件资源)
10、补充题2概述MCS-51单片机的引脚功能,以及三总线的组成。(P33-35 、P46-47)
11、补充题3请叙述51单片机I/O口的应用特性。(P34)
第三章51单片机指令系统
习题:3-2、3-3、3-4、3-6、3-8、3—11、3-13、3-14
1、习题3-2 MCS-51有哪些寻址方式?各有什么特点?试举例说明。(P52-55)
2、习题3-3已知R0=32H,A=48H,(32H)=80H,(40H)=08H。指出执行下列程序段后上述各单元内容的变化。
MOV A,@R0 ;A=80H
MOV @R0,40H ;(32H)=08H
MOV 40H,A ;(40H)=80H
MOV R0,#35H ;R0=35H
3、习题3-4已知A=7AH,R0=30H,(30H)=A5H,PSW=80H,请指出以下各条指令的执行结果。
①XCH A,R0 ;A=30H,R0=7A H,PSW=81H
②XCH A,30H ;A= A5H,(30H)=7A H,PSW=80H
③XCH A,@R0 ;A= A5H,(30H)=7A H,PSW=80H
④XCHD A,@R0 ;A=75H,(30H)=AAH,PSW=81H
⑤SW AP A ;A=A7H,PSW=81H
⑥XCHD A,R0 ;XCHD无此寻址方式
⑦ADD A,30H ;A=1FH,(30H)=A5H ,PSW=81H(CY=1 AC=0 OV=0 P=1)
⑧ADD A,#30H;A=AAH,PSW=04H(CY=0AC=0 OV=1 P=0)
⑨ADDC A,30H ;A=20H,(30H)=A5H,PSW=C1H(CY=1AC=1 OV=0 P=1)
⑩SUBB A,30H ;A=D4H,(30H)=A5H,PSW=84H(CY=1AC=0 OV=1 P=0)4、习题3-6试编出把外部RAM的2050H单元中的内容和2060H单元中内容互相交换的程序。
ORG 0000H
LJMP START
ORG 0100H
START:MOV DPTR,#2050H
MOVX A,@DPTR
MOV R0,A
MOV DPTR,#2060H
MOVX A,@DPTR
MOV DPTR,#2050H
MOVX @DPTR,A
MOV A,R0
MOV DPTR,#2060H
MOVX @DPTR,A
SJMP $
END
5、习题3-8 已知SP=60H,(30H)=24H,(31H)=10H,试分析执行下列指令后各存储单元中的内容以及相应堆栈区域有何变化。
PUSH 30H ;SP=61H,(61H)=24H
PUSH 31H ;SP=62H,(62H)=10H
POP DPL ;DPL=10H,SP=61H
POP DPH ;DPH=24H,SP=60H
6、习题3-11 查指令表,写出下列两条指令的机器码,并比较一下机器码中操作数排列次序的特点。
MOV 78H,80H ;85 80 78 (H)
MOV 78H,#80H ;85 78 80 (H)
7、习题3-13已知外部RAM中以2000H为始址的存储区有20个带符号补码数,请编程把正数和零取出来存放到内部RAM以20H为始址的存储区,负数不作处理。
ORG 0000H
LJMP START
ORG 0100H
START:MOV R0,#20H
MOV DPTR,#2000H
MOV R7,#20
READ:MOVX A,@DPTR
JB ACC.7,NEG
MOV @R0,A
INC R0
NEG:INC DPTR
DJNZ R7,READ
SJMP $
END
8、习题3-14已知SP=60H,PC=2030H,试问执行指令LCALL 2348H 后堆栈指针和堆栈中的内容有什么变化,此时机器调用何处子程序?
SP=61H,(61H)=33H
SP=62H,(62H)=20H
PC=2348 即调用PC=2348处子程序
第四章汇编语言程序设计
4-3、4-4;4-5、4-6、4-8;4-10、4-12、4-14、4-15
习题4-3若有两个无符号数x、y分别存放在内部存储器的50H、51H单元中,试编写一个程序实现x×10+y,结果送入52H、53H两个单元。
ORG 0000H
LJMP START
ORG 0100H
START:MOV A,50H
MOV B,#10
MUL AB
ADD A,51H
JNC SA VE ;加法中无进位,则直接存结果
INC B ;加法中有进位,则高位加1
SA VE:MOV 53H,A ;存结果低位入(53H)
MOV 52H,B ;存结果高位入(52H)
SJMP $
END