单片机复习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、简答题

1、何谓单片机?单片机与一般微型计算机相比,具有哪些特点?

2、简述8051单片机的内部基本结构。

3、程序状态字PSW中主要包含了哪些状态信息?

4、什么是时钟周期、机器周期、指令周期?8051CPU机器周期与时钟周期是什么关系?

5、若震荡频率f osc=12MHz,则震荡周期、状态周期、机器周期分别为多少?

6、如何区别一条访问数据存储器的指令是访问片RAM还是访问片外RAM?

7、8051的存储器由哪几部分组成?片内RAM分为哪几个性质和用途不同的区域?

8、在8051单片机中,什么是特殊功能寄存器?特殊功能寄存器与其它片内RAM单元有什么区别?

9、简述堆栈工作过程和SP的作用。

10、EA引脚有何功能?

11、51系列程序存储器的编址规律是怎样的?如何知道单片机执行指令时,是从片内ROM中取指令,还是从片外ROM中取指令?

12、访问位地址20H和字节地址20H的区别是什么?

13、按照同一优先级中的优先权排队顺序列出MCS-51的中断源和相应的中断入口地址

14、MCS-51定时器/计数器作定时器以及计数器使用时,计数脉冲由谁提供?这与什么因素有关?

15、已知振荡器振荡频率为12MHz,要求定时器/计数器0产生10ms的定时,试编写初始化程序

16、简述定时器/计数器0、1的4中工作方式的特点。

17、综述P0、P1、P2、P3口各有哪几个功能?

18、为何说P1口是“准双向接口”?

19、波特率表示什么?8051单片机的串口在4种工作方式下的波特率分别如何确定?

20、如异步通信,每个字符由11位组成,串行口每秒钟传送250个字符,则波特率为多少?

21、设串行异步通信的传送速率为2400波特,传送的是带奇偶校验的ASCII码字符,每个字符包含10位(1个起始位,7个数据位,1个奇偶校验位,1个停止符),问每秒钟最多可传送多少个字符?

22、串行数据传送的主要优点和用途是什么?

23、MCS-51有几个中断优先级?如何设定?

24、MCS-51单片机CPU响应中断后,由硬件自动执行哪些操作?

25、MCS-51指令系统主要有哪几种寻址方式?请举例说明。

26、中断服务子程序返回指令RETI和普通子程序返回指令RET有什么区别?

27、试用三种方法,实现累加器A与寄存器B的内容交换。

28、何谓堆栈?为什么要设置堆栈?栈区是怎么样确定的?数据进栈、出栈有何种规律?出

栈用什么指令?进栈用什么指令?进栈、出栈时堆栈指针将怎样变化?

29、基址寄存器加变址寄存器间接寻址指令中使用PC与DPTR有何区别?

30、区分下列指令的不同功能:MOV A,#24H与MOV A,24H

31、分析8051单片机数据传送指令中MOV、MOVC、MOVX的作用。

32、JMP、AJMP、SJMP指令有何区别?

33、用于外部数据传送的指令有哪几条?有何区别?

34、MCS-51单片机扩展系统中,为什么P0口要接一个8位的锁存器,而P2口却不接?

35、单片机系统中的定时和计数功能有何区别?分别适用于什么场合?简述其工作原理。

36、说明MCS-51汇编语言源程序的基本格式。

37、请举例说明MCS-51汇编语言中伪指令的作用。

38、简述/PSEN控制信号线的作用。

39、基址寄存器加变址寄存器间接寻址指令包括哪两种?请列举说明。

40、A/D转换接口中采样保持电路的作用是什么?省略采样保持电路的前提条件是什么?

41、单片机用于外界过程控制中,为何要进行A/D、D/A转换?

42、MCS-51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么?

43、在既有片内程序存储器、又扩展片外程序存储器的情况下,两部分存储器的编址如何进行?

44、用线选法和译码扩展存储器各有什么特点?

45、简述MCS-51单片机扩展时/WE、/RD控制信号线的作用。

46、请说明动态扫描和静态扫描显示方式的特点。

47、区分下列指令的不同功能:MOV A,R0与MOV A,@R0。

48、访问位地址2BH和字节地址2BH的区别是什么?

49、简述中断系统初始化步骤

50、简述键盘的工作原理。

二、程序题

1、设被加数和加数分别在以ADR1和ADR2为初址的片内数据存储器中,自低字节起,由低

字节依次存放;他们的字节数为L;请编程将他们加得的和放在原存放被加数的单元中。

2、设被减数和减数分别在以ADR1和ADR2为初址的片内数据存储器中,自低字节起,由低字节依次存放;他们的字节数为L;被减数够减,即最稿高字节想减时不至借位;请编程将他们减得的差放在原存放被减数的单元中

3、将ROM中自2000H单元起的100个数,按序移至片外RAM自2080H单元起的内存区间去

4、编写程序将片外数据存储器地址为1000H~102FH的数据块,全部搬迁到片内RAM30H~5FH中,并将原数据块区域全部清零。

5、设有100个有符号数,连续存放在以2000H为首址的片外数据存储器中,试编程统计其中正数、负数和零的个数,统计的个数分别放在R0、R1、R2中。

6、将片内RAM60H~69H单元中的10个数相加,和的低8位存入7EH,高8位存入7FH。

7、将寄存器A中的十六进制数(该数为0—F)转换为ASCII码,转换后的数仍然放在

寄存器A中。

8、编写程序,统计自P1口输入的数字串中的正数、负数及零的个数,统计的个数分别

存放在R0、R1、R2三个工作寄存器中。

9、编写程序,将外部数据存储器中的5000H—50FFH单元全部清零

10、分析下列程序的功能

PUSH ACC

PUSH B

POP ACC

POP B

11、如果(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下列指令后:

POP DPH;

POP DPL;

相关文档
最新文档