单片机原理及应用期末复习题 一、填空题
1.相对寻址是以 PC 的当前值为基准,加上指令中给出的相对 偏移量 形成目标地址的方式。
2.AT89S51单片机的1个机器周期含有 12 个晶振周期或 6 状态周期。
3.AT89S51单片机进行扩展时,用 P0 口作为地址/数据总线,用 P2 口作为地址总线高8位。
4.假定累加器A的内容30H,执行指令:1000H:MOVC A,@A+PC后,把 程序存储器1031H单元的内容送累加器A中 5. 指令格式是由 操作码 和 操作数 部分组成。
6. AT89S51单片机的串行口控制寄存器中有2个中断标志位,它们是 TI 和 RI 7. JNC rel指令执行时,当CY位为 0 时程序发生跳转。
8. 单片机位寻址区的单元地址是从20H单元到2FH单元,若某位地址是10H,它所在单元
的地址应该是 22H 。
9.外部中断0的中断入口地址为 0003H ,定时/记数器T1的中断入口地址为
001BH 。
10.串行口工作方式2为 9位异步通信,若SMOD=0,f OSC = 6 MHZ ,则其相应波特率为
6×106/64 b/s
11.堆栈应遵循 先进后出 规律,堆栈指针的符号为 SP 12、程序计数器PC存放的是 下一条要执行指令的地址 ; 13、指令MOVX A, @DPTR的寻址方式是 寄存器间接寻址 :
14、MCS-51访问ROM、片内RAM、片外RAM的指令助记符分别为 MOVC 、
MOV和 MOVX 。
15、机器字长为8位,则[—10]原 = 8AH ,[-10]反 = F5H ,[-
10]补 = F6H 。
16、已经累加器A = 97H,则执行指令ADD A, #7DH后,A = 14H ,C =
1
1 ,OV = 0 ,AC = 1 。
二、单项选择题
1.AT89S51单片机的( d )口的引脚,还具有外中断、串行通信等第二功能。
a)P0 b)P1 c)P2 d)P3 2.单片机应用程序一般存放在( b )
a)RAM b)ROM c)寄存器 d)CPU
3.已知某数的BCD码为0111010101000010 则其表示的十进制数值为( b )
a) 7542H b) 7542 c) 75.42H d) 75.42 4.下列指令中不影响标志位CY的指令有( d )。
a)ADD A,20H b)CLR c)RRC A d)INC A 5.CPU主要的组成部部分为( a ) a)运算器、控制器 b)加法器、寄存器
c)运算器、寄存器 d)运算器、指令译码器 6.AT89S51 的CPU是( c )位的单片机
a) 16 b)4 c)8 d)准16
7.当需要从AT89S51单片机程序存储器取数据时,采用的指令为( b )。
a)MOV A, @R1 b)MOVC A, @A + DPTR c)MOVX A, @ R0 d)MOVX A, @ DPTR 8.AT89S51单片机中既可位寻址又可字节寻址的单元是( a )
a)20H b)30H c)00H d)70H 9.下列哪条指令是正确的( d )
a) PUSH R2 b) ADD R0, A c) MOVX A @DPTR d) MOV @R0, A
11.要使累加器A的高4位置为0000,低4位不变,以下指令正确的是 B 。 (A)ANL A, #0F0H (B)ANL A, #0FH
(C)ORL A, #0F0H (D)ORL A, #0FH
12. 利用串行口工作方式1进行异步串行通信,当其波特率为4800bps,每秒最多能传送 A 个字符。 (A)480
(B)960
(C)4800
(D)9600
13. C51中,要编写一个中断函数,则必须在函数名后加 B 修饰符。 (A)void
(B)interrupt
(C)using
(D)unsigned
14. 51系列单片机系统中需扩展32KByte的片外RAM,则需要 C 片6264(8K×8bit)。
2
(A)1 (B)2 (C)4 (D)8
15. 若单片机当前正在执行高优先级的中断服务,则以下能响应的中断是 D 。 (A)高优先级中断 (B)同优先级中断 (C)低优先级中断 (D)以上都不能响应 16. 键盘的软件消除键抖动是通过 C 来实现的。 (A)加滤波器
(B)中断
(C)延时
(D)加RS触发器
三、写出实现下列各要求的指令或程序段
1、将80H单元中的内容与数据4FH相比较,相等返回,不相等将80H单元置FFH返回。 MOV A,80H
CJNE A,# 4FH,BD SJMP L1
BD:MOV 80H,#0FFH L1: RET
2、外部RAM单元2000H的内容传送到内部RAM单元70H;
MOV DPTR,#2000H MOVX A,@DPTR MOV 70H, A
3、将32H单元中内容的第7位取反后送给50H。 MOV A,32H CPL ACC.7 MOV C,ACC.7 MOV 50H,C
4、若(50H)=40H,试写出执行以下程序段后累加器A、寄存器R0及内部RAM的40H、41H、42H单元中的内容各为多少?(5分) MOV A,50H ;(A)=40H MOV R0,A ;(R0)=40H MOV A,#00H ;(A)=0 MOV @R0,A ;(40H)=0 MOV A, #3BH ;(A)=3BH MOV 41H,A ;(41H)=3BH MOV 42H,41H ;(42H)=3BH
(A)= 3BH ; (R0)= 40H;
(40H)= 0; (41H)= 3BH;(42H)= 3BH
5、将外部数据存储器3000H开始100个存储单元的内容存入3070开始的存储单
元(9分)
MOV DPTR #3000H
MOV P2,#30H MOV R1,#70H
MOV R5,#100 3