广东海洋大学单片机.docx

上传人:b****1 文档编号:2711676 上传时间:2023-05-04 格式:DOCX 页数:18 大小:27.06KB
下载 相关 举报
广东海洋大学单片机.docx_第1页
第1页 / 共18页
广东海洋大学单片机.docx_第2页
第2页 / 共18页
广东海洋大学单片机.docx_第3页
第3页 / 共18页
广东海洋大学单片机.docx_第4页
第4页 / 共18页
广东海洋大学单片机.docx_第5页
第5页 / 共18页
广东海洋大学单片机.docx_第6页
第6页 / 共18页
广东海洋大学单片机.docx_第7页
第7页 / 共18页
广东海洋大学单片机.docx_第8页
第8页 / 共18页
广东海洋大学单片机.docx_第9页
第9页 / 共18页
广东海洋大学单片机.docx_第10页
第10页 / 共18页
广东海洋大学单片机.docx_第11页
第11页 / 共18页
广东海洋大学单片机.docx_第12页
第12页 / 共18页
广东海洋大学单片机.docx_第13页
第13页 / 共18页
广东海洋大学单片机.docx_第14页
第14页 / 共18页
广东海洋大学单片机.docx_第15页
第15页 / 共18页
广东海洋大学单片机.docx_第16页
第16页 / 共18页
广东海洋大学单片机.docx_第17页
第17页 / 共18页
广东海洋大学单片机.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

广东海洋大学单片机.docx

《广东海洋大学单片机.docx》由会员分享,可在线阅读,更多相关《广东海洋大学单片机.docx(18页珍藏版)》请在冰点文库上搜索。

广东海洋大学单片机.docx

广东海洋大学单片机

单片机复习提纲(上)

一.单项选择题:

(10分)

1.MC-51单片机复位后,程序计数器PC的内容是C。

A.00HB.FFHC.0000HD.FFFFH

2.8031单片机芯片要使用时应把

信号引脚B。

A.接高电平B.接地C.悬空D.接地址锁存器选通端

3.MCS-51的程序计数器PC为16位计数器,因此其寻址范围是D。

A.8KB.16KC.32KD.64K

4.在MCS-51单片机中,唯一一个可供用户使用的16位寄存器是B。

A.PSWB.DPTR(数据指针)C.IPD.PC

5.在MCS-51单片机中,唯一一个用户不能直接使用的寄存器是D。

A.PSWB.DPTRC.IED.PC

6.在单片机中,用作标志寄存器的一个特殊功能寄存器是A。

A.PSW(状态寄存器)B.DPTRC.TCOND.PC

7.单片机的指令地址存放在D中。

A.PSWB.DPTRC.SPD.PC

8.提高单片机的晶振频率,则机器周期信号C。

A.不变B.变长C.变短D.变长变短不定

9.8031不具有第二功能的I/O口是:

(B)

A、P0口B、P1口C、P2口D、P3口

10.在MCS-51单片机的中断中,如果出现同级中断申请时,就按硬件查询

序列来处理响应次序,其优先级别中第三个为:

(D)

A、定时/计数器中断0B、定时/计数器中断1

C、外部中断0D、外部中断1E、串行口中断

11.MSC-51在响应中断时,必须由用户清除的标志为(B)

A、TF0B、RIC、IE0D、TF1

12.设(A)=F0H,若执行4次指令RLA,则执行完后,A中的内容为:

(C)

A、FFHB、00HC、0FHD、F0H

13.乘法指令是MCS-51单片机中执行时间最长的指令之一,当执行完MULAB后,积的高8位在:

(B)

A、在寄存器A中B、在寄存器B中

C、在Cy中D、在PSW中

14.设执行ADD指令后,A中的内容为10011010B,再执行DAA指令后,A的内容应为(D)

A、10100000B、10010000C、00010000D、00000000

15.设A=56H,R0=20H,(20H)=7AH,若执行XCHDA,@R0,则A中的内容为:

(C)

A、76HB、A6HC、5AHD、50H

16.执行PUSHdirect指令时,SP将进行何种操作?

(B)

A、SP+0B、SP+1C、SP+2D、SP-1

17.定时器T1中断的入口地址为:

(C)

A、0023HB、000BHC、001BHD、0013H

18.下列哪一个指令助记符是非法字符?

(D)

A、RLCB、CLRC、RRCD、ORC

19.MCS-51响应中断时,下面哪一个条件不是必须的(C)。

A、当前指令执行完毕B、中断是开放的

C、没有同级或高级中断服务D、必须有RETI指令

20.关于MCS-51的堆栈操作,正确的说法是(C)。

A、先入栈,再修改栈指针对B、先修改栈指针,再出栈

C、先修改栈指针,再入栈D、以上都不对

21.在中断服务程序中,至少应有一条(D)。

A、传送指令B、转移指令C、加法指令D、中断返回指令

22.ORG2000H

LCALL3000H

ORG3000H

RET左边程序执行完RET指令后,PC=(C)。

A、2000H、B、3000HC、2003HD、3003H

23.要使MCS-51能够响应定时器T1中断、串行接口中断,它的中断允许寄存器IE的内容应是(A)。

A、98HB、84HC、42HD、22H

24.PSW=18H时,则当前工作寄存器是(D)。

A、0组B、1组C、2组D、3组

25.所谓CPU是指(A)。

A、运算器与控制器B、运算器与存储器

C、输入输出设备D、控制器与存储器

26.执行MOVIE,#03H后,MCS-51将响应的中断是(B)。

A、1个B、2个C、3个D、0个

27.各中断源发出的中断请求信号,都会标记在MCS-51系统中的(A)。

A、TCON/SCONB、IEC、IPD、TMOD

28.指令AJMP的跳转范围是(C)。

A、256BB、1KBC、2KBD、64KB

29.能直接进行十进制调整的运算是(C)。

A、有加法和减法B、有乘法和除法C、只有加法D、只有减法

二.填空题:

(20分)

1.根据MCS—51内部RAM的配置情况填空:

MCS—51内部RAM共有256字节。

其中:

80H~FFH为特殊功能寄存器区;

20H~2FH为位寻址区,可以位寻址,也可以字节寻址;

30H~7FH为字节寻址区,只能字节寻址。

2.根据51系列单片机的基本特性填空:

(1)、CPU字长是8位

(2)、可供使用的地址线最多可达到16根

(3)、可寻址的最大空间为64kb

(4)、具有4个8位并行I/O口,共32根I/O线

(5)、具有5个中断源,2个优先级

(6)、8051具有4kbROM,8031无片内ROM

3.访问外部数据存储器必须使用MOV指令。

4.8031的五级中断分为二个外部中断二个定时计数器溢出中断

和一个串行口中断。

5.MCS-51外部中断0的中断入口地址是:

0003H、外部中断1的中断入口地址是:

00BH、定时器T0的中断入口地址是:

0003A定时器T1的中断入口地址是:

001BH、串行口的中断入口地址是:

0023H。

6.中断系统初始化步骤是:

1、开放相应中断源的中断2、设定所用中断源的中断优先级3、若为外部中断,则应规定为低电平还是负边沿的中断发式。

7.ALE是地址锁存允许信号。

8.

是片外ROM读选通信号。

9.在8031单片机中,一个机器周期包括6个状态周期,一个状态周期包括

12个振荡周期。

10.根据应用的要求,复位电路通常有两种基本形式,它们分别是开机复位和

人工复位。

11.子程序必须使用RET指令返回主程序,而中断服务程序必须使用

REI指令返回主程序。

12.指令系统:

在R7=00H的情况下,DJNZR7,rel指令将循环执行无数次。

欲使P1口的低4位输出0而高4位不变,应执行一条ANLP1,#0F0H指令。

欲使P1口的高4位输出1而低4位不变,应执行一条ORLP1,#0F0H指令。

欲使P1口的所有位变反,应执行一条CPLP1指令。

13.MCS-51汇编语言源程序的扩展名为ASM。

14.执行了DIVAB指令后,则商存放在A中,余数存放在B中。

15.执行了MULAB指令后,则积的高8位存放在B中,而积的低8位存放在(A)中。

16.访问外部数据存储器应采用间接寻址方式;查表应使用变址寻址方式。

17.十进制调整指令DAA不能单独执行,在执行该指令之前必须先执行加法指令或者减法指令。

18.位转移指令都是采用位寻址方式实现转移的。

19.中断过程包括:

中断请求、中断响应、中断处理和中断返回。

20.-19D的二进制补码表示为。

(这道题坑爹的!

21.外部中断请求标志位是IE0和IE1。

22.当89C51的RST引脚上保持2个机器周期以上的高电平时,89C51即发生复位。

23.当单片机的型号为8031时,其芯片引线

一定要接低电平。

24.ORG1000H

LCALL4000H

ORG4000H

ADDA,R2执行完LCALL后PC=4000H。

25.指令LCALL37B0H,首地址在2000H,所完成的操作是2003H入栈,PC=37B0H。

26.在变址寻址方式中,以A作变址寄存器,以PL或0PTR作基址寄存器。

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

1000H:

MOVCA,@A+PC

后,把程序存储器1031H单元的内容送累加器A中。

28.设SP=60H,片内RAM的(30H)=24H,(31H)=10H,在下列程序段注释中填执行结果。

PUSH30H;SP=61H,(SP)=24H

PUSH31H;SP=62H,(SP)=10H

POPDPL;SP=61H,DPL=10H

POPDPH;SP=10H,DPH=24H

MOVA,#00H

MOVX@DPTR,A

最后执行结果是2410H=0。

29.通过堆栈操作实现子程序调用,首先要把PL的内容入栈,以进行断点保护。

调用返回时再进行出栈操作,把保护的断点弹回PL。

30.在位操作中,能起到与字节操作中累加器A作用的是位条件转移操作。

31.堆栈设在内部数据存储区,程序存放在程序存储区,外部I/O接口设在存储区,中断服务程序存放在外部数据存储区。

 

三.判断题:

(10分)

(T)1、单片机的存储器ROM和RAM是严格分工的。

(F)2、堆栈可用于响应中断或调用子程序时,保护断点地址,程序断点16位地址会自动压入堆栈,数据入栈前SP先自动加1,然后高8位地址进栈,每进栈一个字节SP又自动加1,而后是低8位地址进栈。

(F)3、程序计数器PC也是特殊功能寄存器。

(F)4、MCS-51人工复位不影响内部RAM中的数据,包括工作寄存器R0—R7。

(F)5、直接寻址是唯一可寻址特殊功能寄存器的寻址方式。

(F)6、累加器中内容入栈可用指令PUSHA来实现。

(F)7、MCS-51系列单片机的特点之一是内部工作寄存器以RAM形式组成。

(F)8、工作寄存器可以这样传递数据:

MOVR1,R2

(F)9、MOVA,@A+DPTR是变址寻址方式。

(F)10、只要有中断出现,CPU就立即响应中断。

(F)11、PC存放的是当前正在执行的指令。

(F)12、每个特殊功能寄存器都既有字节地址,又有位地址。

(F)13、20H一定是字节地址。

(T)14、在MCS-51单片机中,高级中断可以打断低级中断形成中断嵌套。

(T)15、8031单片机具有4个并行端口和一个串行端口。

(T)16、堆栈遵循数据先进后出,后进先出的原则。

(T)17、在堆栈操作中,当栈内的数据全部弹出后,这时的SP指向栈底单元。

(F)18、中断初始化时,对中断控制寄存器的状态设置,只能使用位操作指令,而不能使用字节操作指令。

(F)19、MCS-51的相对转移指令最大负跳距是127B。

(F)20、MCS-51的程序存储器只是用来存放程序的。

(F)21、MCS-51系统可以没有复位电路。

四.名词解释:

1、单片机——单芯片微型计算机

2、CPU——中央处理器

3、ROM——程序存储器

4、RAM——数据存储器

5、PC——程序计数器

6、DPTR——数据指针

7、PSW——程序状态字寄存器

8、SP——堆栈指针

9、TCON——定时计数器

10、SCON——串行口控制寄存器

11、IE——中断允许控制寄存器

12、IP——中断优先级控制寄存器

13、中断——

14、汇编语言——是一种面向机器的语言,使用汇编语言直接操作到单片机的存储器I10接口定时计数器中断系统。

五.指出下列指令中源操作数所采用的寻址方式:

(5分)

1、MOVA,20H(直接寻址)

2、MOVC,20H(位寻址)

3、MOVA,#20H(立即寻址)

4、MOVA,R1(寄存器寻址)

5、MOVA,@R1(间接寻址)

6、MOVCA,@A+DPTR(变址寻址)

7、MOVCA,@A+PC(变址寻址)

8、MOVXA,@DPTR(间接寻址)

9、MOVXA,@R0(间接寻址)

10、MOVC,00H(位寻址)

11、JZrel(相对寻址)

12、SJMP$(相对寻址)

六.阅读并分析程序:

(20分)

1.已知A=83H、R0=17H、(17H)=34H,请指出在执行下列程序段后A的内容。

ANLA,#17H

ORL17H,A

CPLAA=11111100

 

ANLA,#17H

;将17H与A做AND逻辑然后送回给A

;1000_0011&0001_0111=0000_0011=03H,(A)=03H

ORL17H,A

;将17H内存中的数据与A做OR逻辑送回给17H内存

;0011_0100|0000_0011=0011_0111=37H,(17H)=37H

XRLA,@R0

;将A与R0指向内存的值做XOR逻辑送给A

;0011_0111^0000_0011=0011_0100,(A)=34H

CPLA

;A反向

;~0011_0100=1100_1011=0CBH

SWAPA

;A高四位与第四位交换

;A=1011_1100=0BCH

2.设R0=32H、A=48H、(32H)=80H、(35H)=4AH、(40H)=08H,请指出在执行下列程序段后各单元内容的变化。

MOVA,@R0

MOV@R0,40H(80H)=08HR0=35H

MOV40H,A(40H)=80HA=8AH

MOVR0,#35H(R0)=35H(32)=80H

XCHA,40H(A)=80H(40A)=80H135(H)=40H

XCHDA,@R0A=8AH(35H)=40H(40H)=80H

七.编程题:

(10分)

1、求一组数据的最大值(或最小值);

2、统计一串数据中正数、负数的个数;

3、找出一串数据的正数(或负数),且从片外RAM传送到片内RAM。

1、求一组数据的最大值(或最小值);

2、统计一串数据中正数、负数的个数;

3、找出一串数据的正数(或负数),且从片外RAM传送到片内RAM。

4、利用定时器产生一方波信号,要求采用查询或中断的方式编写程序。

5、数据采集系统的编程设计。

6、利用串行口方式1发送(或接收)一组数据。

 

求数组最大值

ORG0000H

JMPMAIN

LENHEQU20H

MAXEQU22H

MAIN:

MOVDPTR,#ADDR

LOOP:

MOVA,R0

MOVCA,@A+DPTR

PUSHACC

SUBBA,MAX

JCNEXT_2

NEXT_1:

POPACC

MOVMAX,A

NEXT_2:

INCR0

DJNZLENH,LOOP

END

统计一串数据的正数,负数的个数

ORG0000H

JMPMAIN

LENHEQU20H

POXEQU21H

NEGEQU22H

ORG0030H

ADDR:

DB5H,-4H,07CH,4H,-5H,16H,-7H,28H,39H

MAIN:

MOVLENH,#09H

MOVPOX,#00H

MOVNEG,#00H

MOVDPTR,#ADDR

LOOP:

PUSHACC

MOVCA,@A+DPTR

ANLA,#80H

JZNEXT_2

NEXT_1:

INCNEG

JMPNEXT_3

NEXT_2:

INCPOX

NEXT_3:

POPACC

INCA

DJNZLENH,LOOP

EXIT:

END

 

找出一串数据的正数,且从片外RAM传送到片内RAM

ORG0000H

JMPMAIN

ADDRDATA1000H

LENHDATA30H

POXDATA31H

ORG1000H

;justtest

DB1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3

MAIN:

MOVLENH,18

MOVDPTR,#1000H

LOOP:

MOVXA,@DPTR

PUSHACC

ANLA,#80H

JZNEXT_1

JMPNEXT_2

NEXT_1:

POPACC

MOVPOX,A

INCPOX

NEXT_2:

INCDPTR

DJNZLENH,LOOP

EXIT:

END

利用定时器产生一方波信号,要求采用中断的方式编写程序

ORG0000H

JMPMAIN

ORG000BH

JMPTIMER0

ORG0030H

MAIN:

MOVTMOD,#01H

MOVTH0,#3CH

MOVTL0,#0B0H

MOVIE,#82H

SETBTR0

MOVR0,#14H

LOOP:

SJMP$

RET

TIMER0:

DJNZR0,NEXT

CPLP1.0

MOVR0,#14H

NEXT:

MOVTH0,#3CH

MOVTL0,#0B0H

RETI

END

 

利用串行口方式1发送一组数据

ORG0000H

JMPMAIN

TMPEQU20H

ADDR:

DB'Oooh,Me...',13,10,00

LENHEQU$-ADDR

MAIN:

MOVSCON,#50H

ORLTMOD,#20H

ORLPCON,#80H

MOVTL1,#0F3H

MOVTH1,#0F3H

SETBTR1

SETBES

SETBEA

MOVTMP,#LENH

MOVDPTR,#ADDR

LOOP:

MOVA,R1

MOVCA,@A+DPTR

JZAGAIN

MOVSBUF,A

JNBTI,$

CLRTI

INCR1

SJMPLOOP

AGAIN:

MOVR1,#00H

SJMPLOOP

END

八.已知程序,给出流程图,编写出源程序。

(10分)

九.简答题:

(15分)

1、开机复位后,CPU使用的是哪组工作寄存器?

它们的地址是什么?

CPU如何确定和改变当前工作寄存器组?

答:

系统复位后,CPU选用第0组工作寄存器即地址分别为00H~07H。

如需改变当前工作寄存器,可设置PSW状态字中的RS1、RS0。

如RS1、RS0为00则指向第0组;为01则指向第1组;为10则指向第2组;为11则指向第3组。

2、MCS-51单片机的程序存储器和数据存储器共处同一地址空间为什么不会发生总线冲突?

答:

访问不同存储器,使用不同的指令。

如访问ROM用MOVC,访问片内RAM则用MOV,片外RAM用MOVX。

不同的指令控制信号有所不同,故可避免总线冲突。

3、80C51单片机响应中断的条件是什么?

答:

(1)中断系统为开中断状态。

(2)有中断源发出中断请求。

(3)没有同优先级或高优先级的中断正在处理。

(4)现行的单条指令已经执行完毕。

(5)若CPU正在执行指令RET、RETI或访问IE或IP指令,则在当前指令执行完后,还要紧接着再执行完下一条指令。

4、MCS-51单片机片内256B的数据存储器可分为几个区?

分别作什么用?

答:

MCS-51单片机片内数据存储器可分为二个区:

00H~7FH单元组成的低128B的片内RAM区、80H~FFH单元组成的高128B的专用寄存器区。

其中低128B的RAM区又分为:

00H~1FH单元为工作寄存器区、20H~2FH单元为位寻址区、30H~7FH单元为用户RAM区。

工作寄存器区可作通用寄存器用,用户RAM区可作堆栈和数据缓冲用。

专用寄存器区又称特殊功能寄存器,使用80H~FFH单元。

5、MCS-51单片机内部包含哪些主要逻辑功能部件?

答:

89C51单片机主要由下列部件组成:

一个8位CPU、一个片内振荡器及时钟电路、4KBFlashROM程序存储器、256B的RAM、2个16位的定时/计数器、4个8位并行I/O端口、一个可编程全双工串行接口、可寻址64KB片外数据存储器和64KB片外程序存储器空间的控制电路。

6、MCS-51指令集中有无“程序结束”指令?

上机调试时怎样实现“程序结束”功能?

答:

没有这样的指令。

但实现“程序结束”至少可以借助4种方法:

(1)用原地踏步指令SJMP$死循环;

(2)在最后一条指令后面设断点,用断点执行方式运行程序;

(3)用单步方式执行程序;

(4)在末条指令之后附加一条LJMP0000H,由软件返回监控状态。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2