三:简答题解答:
1. 可编程接口:可用软件选择其功能的接口。
2. 控制器:有程序计数器、指令寄存器、指令译码器、时序发生器和操作控制器等组成。用来协调指挥计算机系统的操作。
3. 机器数与真值:计算机中的数称为机器数,它的实际值叫真值。
4. 累加器:既存操作数由存操作结果的寄存器。
5. 微型计算机:由微处理器(CPU)、存储器、接口适配器(I/O接口电路)及输入/输出设备组成。通过系统总线将它们连接起来,以完成某些特定的运算与控制。
6. 指令系统:一台计算机所能执行的全部指令的集合称为这个CPU的指令系统。
7. 总线:所谓总线,是连接系统中各扩展部件的一组公共信号线。
8. 运算器:由算术逻辑单元ALU、累加器A和寄存器等几部分组成,用来执行各种算术运算和逻辑运算。
9. 微处理器:微处理器本身不是计算机,±它是微型计算机的核心部件,又称它为中央处理单元CPU。它包括两个主要部分:运算器、(控制器。
10. 指令:指令是CPU根据人的意图来执行某种操作的命令。
11. 汇编语言:汇编语言是一种用指令的助记符、符号地址、标号等编写程序的语言,又称符号语言。
12. 寻址方式:寻址方式就是寻找指令中操作数或操作数所在地址的方式。也就是如何找到存放操作数的地址,把操作数提取出来的方法。
13. 堆栈:堆栈是在片内RAM中专门开辟出来的一个区域,数据的存取是以“后进先出”的结构方式处理的。实质上,堆栈就是一个按照“后进先出”原则组织的一段内存区域。
14. 高级语言:高级语言是完全独立于机器的通用语言。
15. 汇编:汇编语言源程序在交付计算机执行之前,需要先翻译成目标程序,这个翻译过程叫汇编。
16. 指令周期:指执行一条指令所占用的全部时间。通常一个指令周期含1~4个机器周期。
17. 进位和溢出:两数运算的结果若没有超出字长的表示范围,则由此产生的进位是自然进位;若两数的运算结果超出了字长的表示范围(即结果不合理),则称为溢出。例如将正数3FH和负数D0H相加,其结果不会超出8位字长的表示范围,所以其结果(1)0FH中的进位是正常进位(也就是模)。但是,若正数3FH与正数70H相加,其结果为AFH,最高位为“1”,成了负数的含义,这就不合理了,这种情况称为溢出。
先有传感器进行检测,并且转换为电信号,然后经过放大器放大为0V~5V电平的模拟量。所以必须加接模拟通道接口,以实现模拟量和数字量之间的转换。
A/D(模/数)转换就是把输入的模拟量变为数字量,供单片机处理;而D/A(数/模)转换就是将单片机处理后的数字量转换为模拟量输出。
19. 答:对于8位A/D转换器,实际满量程电压为5V,则其量化单位1LSB=5V/255≈0.0196V,考虑到A/D转换时会进行4舍5入处理,所以最大量化误差为±(1/2)LSB,即±0.0098V或±9.8mV。
20. 答:A/D转换芯片中采样保持电路的作用是:能把一个时间连续的信号变换为时间离散的信号,并将采样信号保持一段时间。
当外接模拟信号的变化速度相对于A/D转换速度来说足够慢,在转换期间内可视为直流信号的情况下,可以省略采样保持电路。
21. 答:串行数据传送是将数据按位进行传送的方式。其主要优点是所需的传送线根数少(单向传送只需一根数据线、双向仅需两根),对于远距离数据传送的情况,采用串行方式是比较经济的。所以串行方式主要用于计算机与远程终端之间的数据传送。
22. 答:没有这样的指令。但实现“程序结束”至少可以借助4种办法:
① 用原地踏步指令SJMP $ 死循环:
② 在最后一条指令后面设断点,用断点执行方式运行程序;
③ 用单步方式执行程序;
④ 在末条指令之后附加一条LJMP 0000H,由软件返回监控状态。
23. 答:相同点:都是让CPU从主程序转去执行子程序,执行完毕后又返回主程序。不同点:中断服务子程序是随机执行的,而普通子程序是预先安排好的;中断服务子程序以RETI结束,而一般子程序以RET结束。RETI除了将断点弹回PC动作之外,还要清除对应的中断优先标志位(片内不可寻址的触发器),以便新的中断请求能被响应。
24. 答:DA A为十进制调整指令。在进行BCD数加法运算时,该指令要跟在加法指令后面,对A的内容进行十进制调整。
25. 答:表3-1概括了每种寻址方式可涉及的存储器空间。
表3-1操作数寻址方式和有关空间
寻址方式 |
源操作数寻址空间 |
指令举例 |
立即数寻址 |
程序存储器ROM中 |
MOV A,55H |
直接寻址 |
片内RAM低128B特殊功能寄存器SFR |
MOV A,#55H |
寄存器寻址 |
工作寄存器R0~R7、A、B、C、DPTR |
MOV 55H,R3 |
|
片内RAM低128B[@R0、@R1、SP(仅PUSH,POP)] |
MOV A,@R0 |
变址寻址 |
程序存储器(@A+PC,@A+DPTR) |
MOVC A,@A+DPTR |
相对寻址 |
程序存储器256B范围(PC+偏移量) |
SJMP 55H |
位寻址 |
片内RAM的20H~2FH字节位地址 |
CLR 00H |
26. 答:(1)CPU响应中断的条件如下:
① 首先要有中断源发出有效的中断申请;
② CPU中断是开放的,即中断总允许位EA=1,CPU允许所有中断源申请中断;
③ 申请中断的中断源的中断允许位为1,即此中断源可以向CPU申请中断。
以上是CPU响应中断的基本条件。如果上述条件满足,则CPU一般会响应中断。
但是,若有下列任何一种情况存在,则中断响应会被阻止。
① CPU正处在为一个同级或高级的中断服务中。
② 现行机器周期不是所执行的指令的最后一个机器周期。作此限制的目的在于使当前指令执行完毕后,才能进行中断响应,以确保当前指令的完整执行。
③ 当前指令是返回指令(RET、RETI)或访问IE、IP的指令。因为按MCS-51 中断系统的特性规定,在执行完这些指令之后,还应在继续执行下一条指令,然后才能响应中断。
若存在上述任何一种情况,CPU将丢弃中断查询结果;否则,将在紧接着的下一
个机器周期内执行中断查询结果,相应中断。
(2)CPU响应中断后,保护断点,硬件自动将(PC)→堆栈,寻找中断源,中断矢量→PC,程序转向中断服务程序入口地址。
(3)/INT0=0003H,T0=000BH,/INT1=0013H,T1=001BH,串行接口=0023H。
27. 答:(1)低级不能打断高级,高级能够打断低级;
(2)一个中断已被响应,同级的被禁止;
(3)同级,按查询顺序,/INT0→T0→/INT1→T1→串行接口。
28. 答:(1)有电平触发和脉冲触发。
(2)电平方式是低电平有效。只要单片机在中断请求引入端/INT0和/INT1上采样到低电平时,就激活外部中断。
脉冲方式则是脉冲的下跳沿有效。这种方式下,在两个相邻机器周期对中断请求引入端进行采样中,如前一次为高,后一次为低,即为有效中断请求。因此在这种中断请求信号方式下,中断请求信号的高电平状态和低电平状态都应至少维持一个周期以确保电平变化能被单片机采样道。
29. 答:(1)由中断源提出中断,再有中断控制端决定是否中断,再按设定好的优先级的顺序响应中断。如同一级优先级的中断按:外部中断0,定时中断0,外部中断1,定时中断1,串行中断。
中断后如果是:脉冲触发,IE1(0)被清0;电平触发,IE1(0)不被清零,要用软件清0。
EA=0即可。
(3)由IP控制:1为高级,0为低级,PS为串行中断优先级,PT1(0)为定时中断1(0)优先级,PX1(0)外部中断1(0)优先级。使哪个中断源为优先级,就置哪个优先设定位为1。
30. 答:某条指令的执行周期由若干个机器周期(简称M周期)构成,以个机器周期包括6个状态周期(又称时钟周期,简称S周期),而一个状态周期又包含两个振荡周期(P1和P2,简称P周期)。也就是说,指令执行周期有长有短,但一个机器周期恒等于6个状态周期或12个振荡周期,即1M=6S=12P。请见《教材》P28图。
31. 答:TR1为定时器T1的运行控制位,通常将该位置1就可启动定时器T1使之运行起来;把TR1清0便停止定时器T1的运行。但在定时器T0被设定为模式3运行时,就不能再用这种方法来控制定时器T1的起停了。因为在这种情况下,如《教材》P106图6-11所示,TR1借给定时器T0作为8位定时器TH0的运行控制位了。
当定时器T0在模式3下运行时,若把定时器1设定为模式3,即将TMOD寄存器的位5(M1)和位4(M0)写成11B,则定时器T1便停止运行;若此后将其从模式3种切换出来,例如,把这两位再次写成01B,则定时器T1将按模式1运行起来。
32. 答:把80C51的/EA引脚接地,片外扩展EPROM芯片,就等于宣布片内ROM作废,完全执行片外EPROM中的程序,这样,片内硬件资源不受影响,可继续使用。
33. 答:在数据通信中,描述数据传送速度的方式有3种:
① 波特率—每秒传送多少个信号码元(或每秒信号码元变换的总个数),单位是波特(Bd)。
② 比特率—每秒传送多少个二进制位(或每秒传送二进制码元的个数),单位是b/s。
③ 数据传送速率(或字符传送速率)—每秒传送多少个字符(或单位时间内平均数据传移速率),单位是字符/秒。
当传输的信号是二进制数位时,波特率和比特率就变成了一回事,尤其是计算机通信
中,信号码元常与二进制码元相同,此时可以统一起来。例如,甲乙双方传送二进制数据的速度是每秒传送300个字符,每个字符附加了起始、停止和校验各一位,此时描述该速度有3种方法:
① 数据字符传送速率是300字符/秒。
② 比特率为300×(8+1+1+1)b/s=300×11b/s=3300b/s。
③ 波特率与比特率相同,亦为300×11Bd=3300Bd。
如需改变
当前工作寄存器,可设置PSW状态字中的RS1、RS0。如RS1、RS0为00则指向第0组;为01则指向第1组;为10则指向第2组;为11则指向第3组。
35. 答:程序状态字寄存器PSW主要用于保存程序运行中的各种状态信息。各位功能如下:
CY(PSW·7)为进位标志。在进行加或减运算中,表示有无进位或借位。位操作时,又可认为是位累加器。
AC(PSW·6)为辅助进位标志。加或减操作中,表示低4位数向高4位有无进位或借位,以用作BCD码调整的判断位。
F0(PSW·5)为用户标志位。用户可自行定义的一个状态标记。
RS1、RS0(PSW·4 PSW·3)为工作寄存器组指针。用以选择CPU当前工作寄存器组。
OV(PSW·2)为溢出标志。算术运算时,表示是否溢出。
F1(PSW·1)为用户标志位。同F0。
P(PSW·0)为奇偶标志位。表示累加器A中“1”的位数的奇偶数。该位多用作串行通信中的奇偶校验。
36. 答:字节地址是片内RAM的单元地址,而位地址是片内RAM单元中的某一位。7CH字节地址为RAM的7CH单元,而7CH位地址是RAM 2FH单元中的D4位。
37. 答:89C51单片机主要有下列部件组成:一个8位CPU、一个片内振荡器及时钟电路、4KB Flash ROM程序存储器、256B的RAM、2个16位的定时/计数器、可寻址64KB片外数据存储器和64KB片外程序存储器空间的控制电路、4个8位并行I/O端口及一个可编程全双工串行接口。
38. 答:MCS-51系列单片机的存储器配置从物理结构上可分为:片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器。从逻辑上可分为:片内外统一编址的64KB的程序存储器、片内256B的数据存储器以及片外64KB的数据存储器。
39. 答:MCS-51系列单片机的存储器有6个保留特殊功能单元,其中0000H为复位入口、0003H为外部中断0矢量入口、000BH为T0溢出中断入口、0013H为外部中断1矢量入口、001BH为T1溢出中断入口、0023H为串行接口中断入口。
40. 答:MCS-51单片机片内数据存储器可分为二个区:00H~7FH单元组成的低128B的片内RAM区、80H~FFH单元组成的高128B的专用寄存器区。其中低128B的RAM区又分为:00H~1FH单元为工作寄存器区、20H~2FH单元为位寻址区以及30H~7FH单元为用户RAM区。工作寄存器区可作通用寄存器用,用户RAM区可作堆栈和数据缓冲用。专用寄存器区又称特殊功能寄存器。
41. 答:MCS-51单片机有两种低功耗方式,分别为待机(休闲)方式和掉电方式。置PCON中的D0位即IDL为“1”,单片机即进入待机方式;置D1位即PD为“1”,则进入掉电方式。
42. 答:把80C51的/EA引脚接地,片外扩接EPROM芯片,就等于宣布片内ROM作废,完全执行片外EPROM中的程序。这样,80C51就可当80C31使用。
43. 答:这段程序的任务是把片内RAM 20H单元的内容分解成高4位和低4位,低4位存入21H单元,高4位存入22H单元。可以认为这是把20H单元内的数据分成两个十六进制位或两个BCD位。这可用除法进行:
MOV A,20H ;取数
MOV B,#10H ;除数为16
DIV AB ;分离十六进制位
MOV 21H,B ;存低位
MOV 22H,A ;存高位
PUSH PSW。
45. 答:这4条指令的任务是要转移到目的地址1234H去,所以可用一条LJMP 1234H指令来取代它们。