单片机原理及应用试卷(A卷)

  • 格式:doc
  • 大小:37.00 KB
  • 文档页数:3

单片机原理及应用试卷(A卷)
一、填空题
1、将二进数1010 1011B转化为十进制数为171D,转化为十六进制数为0ABH。

2、将十进制数54转化为十六进制数为36H,转化为BCD码为1010 0100。

3、将二进数0100 1001 0111B转化为BCD码为为497。

4、三总线:地址、数据、控制。

5、8051片内数据存贮器分为片内RAM与特殊功能寄存器(SER),片
内分工作寄存器、位寻址区、数据缓冲区。

6、8051复位后从0000H开始执行程序,外中断0和外中断1的中断服
务程序入口地址分别为0003H、0013H
7、单片机P0口为数据总线和地址总线的复用端口,74LS373与P0口连
接,输出线为系统的低8位地址。

8、8K*3的存储有地址线16根。

容量为24K,1K=1024B。

9、FA用于选片内、外程序存储器,当EA=0时,只访问片外存储器。

10、片内数据存储器读写指令为MOV,片外数据存储器读写指令为
MOVX,读片外的程序存储器指令为MOVC。

11、8051内部有2个16位定时/计数器。

12、中断的最后一条指令是RETI。

二、问答题。

1、什么叫中断?编制中断程序时为什么在主程序的初始化程序中,必须设置SE=7B,EA这条指令?在中断服务程序中为什么要保护现场?
答:中断是指CPU正在执行程序,处理某件事情的时候,外部发生了某一事件,请求CPU马上处理。

CPU暂时中断当前工作,转入处理所发生的事件,处理完后,在返回到原来被中断的地方,继续原来的工作。

EA是中断的总允许位,SETB EA即使EA=1,CPU开放中断,则设计的单片机系统可以响应被“允许的中断源”申请中断,如果EA=0,则CPU 屏蔽所有中断。

一般主程序和中断服务程序都可能会用到累加器、PSW寄存器和一些其他寄存器。

CPU在进入中断服务程序后,用到上述寄存器时就会破坏它原来存在寄存器中的内容,一旦中断返回,将会造成主程序混乱。

因而,在进入中断服务程序后,一般要先保护现场,然后再执行中断服务程序,在返回主程序以前,要恢复现场。

2、简述上机编制、调试程序过程。

答:根据要求画流程图、编程、录入程序、汇编和调试程序。

3、简述一个系统的设计过程(包括软件和硬件)。

答:①问题指出。

②总体方案设计。

③具体电路设计。

包括单元电路设计和单元电路的调试。

④应用软件的设计。

各软件模块设计。

⑤系统整体调试(整体调试、测试及记录)
4、设ROMP片内RAM片外RAM各有关单元的内容如下图示,问执行下列程序后,累加器A的内容。

0000 AJMP 03H ------------------跳转指令跳至0030
ORG 0030H ---------------程序开始
0030 MOV R0 #32H ----------R0=32
MOV A @R0-----------A=#31H
MOV R1 A -----------R1=31H
MOVX A @R1-----------A=33H(A=片外31H指向0033H)
5、阅读下列程序要求:①说明程序的功能。

②写出涉及的寄存器及片内RAM 单元的最后结果。

MOV R0 #40H
MOV A @R0------------A=98
INC R0-------------------------R0=41H
ADD A @R0-----------A=40H+41H
INC R0-------------------------R0=42H
MOV @R0 A---------------A=98H+0AFH (低位存入42H)
CLR A--------------------------A=0
ADDC A #00H-----------(高位存入A)
INC R0--------------------------R0=43H
MOV @R0 A-----------------A(高位=43H)
①40H单元与41H单元内容相加后高位存入43H单元,低位存入42H单元。

②A=1,R0=43H,C=1,42H+43H=98H+0AFH=
6、设计一个子程序,将ROM中自2000H单元的100个数按顺序传送到片外RAM自2030H开始的内容存入单元中。

MOV DPIR,(高位地址) #2000H-----(#20送DPTR,#00送R2)
MOV R1, #100 -------100个数
MOV R2, #00H
LOOP: MOV A, R2
MOVC A, @A+DPIR
MOV R3, A ----------取第一个数
MOV A, #80H
ADD A, R2 ---------目标地址位移
MOV DPL,(低位地址) A----------完成目标地址调整
MOV A, R3
MOVX @DPIR, A ----------送达目标地址
INC R2
MOV DPL, #00H-------清零(必须清零来保障逐
增的准确性)DJNZ R2, LOOP
RET
7、编程。

将片内RAM60H—69H单元的十个数相加和低8位存入THE,高8位存入TFH。

MOV R1, #10------计数器
MOV R0, #60H-----首地址
MOV A, #00H-----置零
MOV TF, A
LOOP: ADD A, @R0
JNC LP -----------------------有没有进位位有就往TFH送
没有就往“LP:INC R0 ……”下
走。

INC TFH(高8位地址)
LP: INC R0
DJNZ R1 LOOP
MOV THE(低8位地址) A
RET。