单片机习题答案1-2 联系客服

发布时间 : 星期二 文章单片机习题答案1-2更新完毕开始阅读817eefeece2f0066f53322b6

习题一

1.什么是单片机,和微机相比较,它有什么优点? 2.请叙述51系列单片机的主要产品及其特点。

3.除51系列单片机外,常用的单片机还有哪些型号,各有什么优点? 4.单片机中常用的数制有哪些,它们之间相互如何转换? 5.计算机中常用的二进制编码有哪些,请分别予以叙述。 6.(1)10和(-1)10的原码、反码和补码分别是多少?

习题二

1.单片机主要应用在什么领域?

2. 89C51单片机包含哪些主要逻辑功能部件? 各有什么主要功能? 3.89C51单片机EA端如何使用?

4.什么是机器周期、指令周期?89C51指令周期、机器周期和时钟周期的关系如何?当主频为12MHz时,一个机器周期等于多少微秒?执行一条最长的指令需多少微秒?

5. 如何认识89C51存储器空间在物理结构上可划分为四个空间,而在逻辑上又可划分为三个空间?各空间的寻址范围、寻址方式是什么? 6.89C51有哪些主要的特殊功能寄存器,分布在哪里?

7.内部RAM低128B从功能和用途方面,可划分为哪三个区域?

8.89C51内部RAM有几组工作寄存器?每组工作寄存器有几个工作寄存器?寄存器组的选择由什么决定?

9.89C51的外部RAM和I/O口是如何编址的,如何寻址?

10.89C51的程序存储器的寻址空间是多少,如何区别片内程序存储器和片外程序存储器的?

11.89C51的位寻址区在哪里,位寻址空间是多少?

12.什么是堆栈,什么是SP,89C51的堆栈位于什么地方,复位后堆栈指针初值是多少,一般将SP设置为多少?进栈、出栈时堆栈指针将怎样变化? 13.单片机包括哪两种复位方式,在单片机应用系统中为何需要系统复位,复位后主要寄存器的状态如何?

14.89C51的P3口各引脚的第二功能是什么? 15.89C51有几种低功耗方式,如何进入和退出?

习题三

1.什么是指令,什么是指令系统? 2.89C51总共有多少条指令,分为哪几类? 3.89C51有哪些寻址方式,各自的寻址空间如何? 4.说明下列指令中源操作数采用的寻址方式。

MOV MOV MOV JMP MOV MOV

A,R7 A,55H A,#55H @A+DPTR 30H,C A,@R0

MOVX A,@R0

5.下列各条指令单独执行后,A中的结果是什么?设(60H)=35H,(A)=19H,(R0)=30H,(30H)=0FH,(DPTR)=2000H,(2000H)=0AAH,(2019H)=23H。

(1)MOV A,#48H (2)ADD A,60H (3)ANL A,@R0 (4)XCHD A,@R0 (5)MOVX A,@DPTR (6)MOV A,R0 (7)MOVC A,@A+DPTR

6.阅读下列程序段,写出每条指令执行后的结果。 (1)并说明此程序段完成什么功能?

MOV MOV ADD

R1,#30H A,#64H A,#47H

;(R1)= ;(A)= ;(A)=

DA MOV

A @R1,A

;(A)= ;(R1)=

(2)若(A)=80H,(R0)=17H,(17H)=34H,执行下列程序段后,(A)=?

ANL ORL XRL CPL

A,#17H 17H,A A,@R0 A

;(A)=

;(17H)= ,(A)= ;(A)= ;(A)=

(3)设 (A)=0FH ,(R0)=30H,内部RAM (30H)=0AH, (31H)=0BH,(32H)=0CH,请写出在执行各条列指令后,所示单元的内容 (4) (5)

MOV MOV MOV MOV MOV

A,@R0 @R0,32H 32H,A R0,#31H A, @R0

;(A)= ;(30H)= ;(32H)= ;(R0)= ;(A)=

MOV SP,#50H MOV MOV

A,#0F0H B,#0FH

PUSH ACC ;(SP)= ;(51H)= PUSH B ;(SP)= ;(52H)= POP POP MOV MOV MOV MOV XCH

ACC B A,#30H B,#0AFH R0,#31H 30H,#87H

A,R0 ;(A)= ;(R0)=

;(SP)= ;(B)= ;(SP)= ;(A)=

SWAP A ;(A)=

7.已知程序执行前有A=02H,SP=52H,(51H)=FFH,(52H)=FFH。下述程序执行后,各寄存器和RAM单元的值是多少?

POP

DPH

POP MOV RL MOV

DPL

DPTR,#4000H A B,A

MOVC A,@A+DPTR PUSH A MOV INC

A,B A

MOVC A,@A+DPTR PUSH A RET ORG

4000H

DB 10H,80H,30H,50H,30H,50H

A=( ),SP=( ),(51H)=( ),(52H)=( ),PC=( )。

8. 假定累加器A中的内容为30H,执行指令

1000H:MOVC A,@A+PC

后,把程序存储器( )单元的内容送入累加器A中。

9. 试编写1个程序,将内部RAM中45H单元的高4位清0,低4位置1。 10. 试编写程序,查找在内部RAM的30H~50H单元中是否有0AAH这一数据。若有,则将51H单元置为“01H”;若未找到,则将51H单元置为“00H”。 11. 试编写程序,查找在内部RAM的20H~40H单元中出现“00H”这一数据的次数。并将查找到的结果存入41H单元。

12. 若SP=60H,标号LABEL所在的地址为3456H。LCALL指令的地址为2000H,执行指令如下:2000H:LCALL LABEL后,堆栈指针SP和堆栈内容发生了什么变化?PC的值等于什么?如果将指令LCALL 直接换成ACALL是否可以?如果换成ACALL指令,可调用的地址范围是什么?

13.编写程序,进行两个16位数的减法:6F5DH-13B4H,结果存入内部RAM的30H和31H单元,30H存差的低8位。

14.编写程序,进行两个16位数的加法:6F5DH+13B4H,结果存入内部RAM