一、 选择题(第三章习题)(20分,每小题1分)
1. 在单片机cpu中,psw中的cy、ac、ov和p是反映( )参与运算的状态。
a) dptr
b) bc) a
d) sp2. mcs-51系列单片机中,反映程序运行状态或反映运算结果的特殊功能寄存器是( )
a) pcb) psw
c) ad) sp
3. mov a,@r0这条指令中@r0的寻址方式称为( )
a) 寄存器寻址。
b) 寄存器间接寻址。
c) 直接寻址。
d) 立即数寻址。
4. 下列指令中正确的是( )
a) mov p2.1, a
b) jbc tf0, l1
c) movx b, @dptr
d) mov a, @r2
5. 下列哪条减法指令是错误的( )
a) subb a,r1
b) subb a, #
c) dec r1
d) dec dptr
6. 下列指令中正确的是( )
a) mov r1,r3
b) dec dptr
c) mul a,30h
d) mov tl0,r7
7. 下列指令不正确的是( )
a) dec a
b) dec 30h
c) dec dptr
d) dec @r0
8. 下列指令中正确的是( )
a) cjne a,r0,next
b) cjne a,@r0,next
c) cjne a,#40,next
d) cjne r2,30h,next
9. 下列指令中错误的是( )
a) clr a
b) clr 27h.5
c) clr r7
d) clr c
10. 下列指令中正确的是( )
e) mov r1,r3
f) dec dptr
g) mul a,30h
h) mov tl0,r7
11. mcs-51单片机执行时间最长一条指令需要( )个机器周期。
a) 1b) 2
c) 4d) 8
12. 下列指令中不能导致内部ram 30h单元置为全1的是( )
a) setb 30h
b) mov 30h, #0ffh
c) mov @r1, #0ffh; (r1)=30h
d) orl 30h, #0ffh
13. 下列指令中不能导致内部ram 30h单元清零的是( )
a) clr 30h
b) mov 30h, #
c) mov @r1, #0 ; r1)=30h
d) anl 30h, #
14. 关于ajmp指令的正确描述是( )
a) ajmp的寻址范围是2kb。
b) 只要子程序长度不超过2kb ,在子程序内ajmp都可以正确使用。
c) 当前pc值到目标地址不超过2kb,ajmp指令都可以正确转移。
d) 当前pc值的高5位与目标地址的高5位必须相同,ajmp指令才能正确转移。
15. 正确的基址+变址间接寻址指令是( )
a) mov a,@a+dptr
b) movx a,@a+pc
c) sjmp @a+dptr
d) jmp @a+dptr
16. 关于无条件转移指令jmp @a+dptr的正确描述是( )
a) a的内容是8位无符号二进制数。
b) a的内容是8位有符号二进制数。
c) 转移范围只有节。
d) 转移范围从dptr指向的程序存储器地址向前127到向后节。
17. 关于无条件相对转移指令sjmp rel中操作数rel的正确描述是( )
e) rel是8位无符号二进制数。
f) rel是8位有符号二进制数。
g) rel是16位无符号二进制数。
h) rel是16位有符号二进制数。
18. sjmp $指令的作用是。
a) 等待中断。
b) 死循环。
c) 和暂停指令作用一样。
d) 结束程序执行。
19. 所有条件转移指令都是属于( )
a) 相对转移。
b) 短转移。
c) 长转移。
d) 同页内转移。
20. 所有条件转移的转移范围都是()
a) 64k
b) 2kc) 同页内2k
d) 当前pc向后节到向前节。
21. 会导致pc值改变的指令是( )
a) movc a,@a+dptr
b) movc a,@a+pc
c) jmp @a+pc
d) jmp @a+dptr
22. 8051单片机中,对特殊功能寄存器的寻址只能使用( )寻址方式。
a) 寄存器。
b) 直接。
c) 立即。
d) 寄存器间接。
23. 对内部ram后节可用的寻址方式是( )
a) 寄存器寻址。
b) 直接寻址。
c) 立即寻址。
d) 寄存器间接寻址。
24. 解决程序存储器与外部数据存储器地址完全重叠的方法是( )
a) 采用不同的时序。
b) 采用不同的寻址方式。
c) 采用不同的通用寄存器组。
d) 调整到不同的地址空间。
25. 解决栈区与通用寄存器区地址重叠的方法是( )
a) 采用不同的时序。
b) 采用不同的寻址方式。
c) 采用不同的通用寄存器组。
d) 调整到不同的地址空间。
26. 当ale信号有效时,p0口传输的信息是( )
a) 低8位地址。
b) 累加器的8位数据。
c) pc的16位值。
d) dptr的16为值。
27. mcs-51单片机扩展i/o口与( )统一编址。
a) 内部程序存储器。
b) 外部程序存储器。
c) 内部数据存储器。
d) 外部数据存储器。
28. 当psen信号有效时,p0口传输的信息来自于( )
a) 程序存储器。
b) 外部数据存储器。
c) 内部数据存储器。
d) i/o口。
29. 当wr信号有效时,p0口传输的是写到( )的信息。
a) 外部程序存储器。
b) 内部程序存储器。
c) 外部数据存储器。
d) 内部数据存储器。
30. 当rd信号有效时,p0口传输的是来自于( )的信息。
a) 外部程序存储器。
b) 内部程序存储器。
c) 外部数据存储器。
d) 内部数据存储器。
31. 当晶振频率为12mhz,t0配置为定时器,最高定时精度为( )
a) 1/12us
b) 0.1us
c) 1us
d) 12us
32. 当中断被响应后,在下面的中断请求标志中不需要软件复位的是()。
a) tib) ri
c) ie1
d) tf1
33. 下面有关中断的提法,只有( )是正确的。
a) ea置1就可以响应中断。
b) 当一个中断被置为高优先级后,它就可以打断其他中断服务。
c) 高优先权的中断请求必然被响应。
d) mcs-51单片机只有2个中断优先级。
34. 下列关于串行口中断的提法,不正确的是( )
a) ri、ti都可以作为中断请求标志。
b) 接收和发送共用一个中断入口地址。
c) 发送完一帧数据后ti置1
d) 接收完一帧数据后ri置1
35. 要进行主从多机通讯必须使用( )
a) 方式0和方式1
b) 方式2和方式3
c) 方式0和方式2
d) 方式1和方式3
36. 要进行mcs-51单片机主从多机通讯必须将( )置1。
a) tb8
b) rb8
c) sm2
d) ren
37. 下列提法中正确的是( )
a) t0、t1都可作为串行通讯口的波特率发生器。
b) t0、t1的工作模式都有4种。
c) tr0、tr1可以分别控制t0、t1的计数起停。
d) t0、t1对相应输入引脚上的脉冲进行计数时就是计数器。
38. 把t1配置成模式1、定时器方式,为实现最长定时,它的时间常数初值为( )
a) 0b) 1
c) 65535
d) 65536
39. 当中断被响应后,在下面的中断请求标志中必须要由发出中断请求设备复位的是( )
a) tib) ri
c) ie1
d) tf1
40. 下面关于中断请求的提法,错误的是( )
a) mcs-51单片机的所有中断都是可屏蔽的。
b) ea置0就可以封锁所有中断请求。
c) 优先权高的中断请求总是被响应。
d) 每个中断请求都有中断请求标志。
41. 要使串行口配置为一帧数据为11位且波特率可变,应该使用( )
a) 方式0
b) 方式1
c) 方式2
d) 方式3
42. 在多机通讯中一帧数据必须有( )
a) 8位。
b) 9位。
c) 10位。
d) 11位。
二、 写出下列指令中操作数的寻址方式(20分,每小题2分)
1) mov a,40h
2) mov a,@r0
3) mov 30h, #50h
4) mov p1,#0f0h
5) movx a,@dptr
6) mov c,20h
7) movc a, @a+dptr
8) inc @r1
9) inc 32h
10) dec a
11) dec r1
12) clr a
13) clr c
14) djnz r7, loop
15) djnz 30h, do
16) sjmp next
17) sjmp $
18) ajmp do
19) cjne @r0,#0dh,go4
20) jb acc.7,go
21) jb 0,done
22) jmp @a+dptr
23) pop acc
24) push dph
三、 试写出完成以下每种操作的指令序列(习题3-11)(12分,每小题3分)
1) 将r0的内容传送到r1;
2) 把dptr内容减1
3) dptr的内容变补码。
4) 把内部ram单元80h的高4位和低4位互换。
5) 内部ram单元50h与80h的内容互换。
6) 外部ram单元1000h的最高2位求反。
7) 外部ram单元2000h的内容循环右移3次。
8) 把p1.7当作i2c总线的sda,p1.6当作scl,写出产生stop信号的所有指令。
9) 把p1.7当作i2c总线的sda,p1.6当作scl,写出产生start信号的所有指令。
10) 把p1.7当作i2c总线的sda,p1.6当作scl,写出将ack信号传到cy的所有指令。
四、 程序设计(20分,每小题10分)
1) 计算y=10x+500,其中x为双字节无符号二进制数,运算数据的存放地址自定。(作业题)
2) 求16位补码数的绝对值,补码存放在data和data+1单元中(低字节在前),并将结果存放在原单元。(习题7-3)
3) 已知在单片机内部ram中,从20h单元开始存储50个8位有符号数据,请编写一个程序统计其中正数的个数,并将统计结果存放在70h单元。(习题7-6)
4) 从内部ram的20h单元开始存一批带符号的8为二进制数据,数据长度存放在1fh单元中,请统计其中大于0、小于0、等于0的数据个数,并把统计结果分别存放在one、two、three单元。(习题7-7)
5) 搜索一串ascii码字符串中的最后一个非空格字符,该字符串从外部ram的8000h单元开始存放,以回车字符(ascii码为0dh)结束。编程实现搜索,并将搜索到的最后一个非空格字符的单元地址存放在40h和41h单元(低字节在前)。(习题7-10)
6) 5个双字节无符号数求和,数据存放在外部ram的5000h单元开始的区域(数据低字节在前),把结果存放在sum开始的内部ram单元中(低字节在前)。(习题7-11)
五、 简单应用设计(28分)
1) 单片机应用系统如下图所示,p1口为输出口,外接8个指示灯l0~l7。系统工作时,指示灯l0~l7按1秒的间隔逐个被点亮。在逐个点亮l0~l7的过程中,当开关k被扳下时,则暂停逐个点亮的操作,l0~l7全部点亮并闪烁10次(即:
l0~l7亮500ms,熄500ms,重复10次),闪烁完成后,从暂停前的灯位开始继续逐个点亮的操作。为保证定时的准确性,所有定时必须用8051单片机的定时/计数器完成。(例4.
1)2) 单片机应用系统如下图所示,p1口的p1.0~p1.3为输出,外接指示灯l0~l3;p1口的p1.
7~p1.4为输入,外接开关k0~k3,欲采用外部中断控制方式实现开关k0~k3闭合状态分别控制指示灯l0~l3的状态,按钮开关s每闭合一次,使外部中断触发一次,程序改变一次指示灯的状态。(例4.
2)3) 单片机应用系统的晶振频率为6mhz,使用定时/计数器定时方法在p1.0引脚上输出周期为100ms、占空比为1:4的信号序列(如下图所示)。(例5.3)
4) 利用定时/计数器t0测量int0引脚上出现的正脉冲的宽度(假设脉冲宽度小于65536us),已知系统的晶振频率为12mhz,将所测值高字节存入片内数据存储器71h单元,低字节存入片内数据存储器70h单元。(例5.4)
5) 在检测系统中,通常采用平均值滤波的方法来消除检测数据的随机干扰,即连续采集多次,取平均值作为测量值。下图为8051单片机与串行a/d转换器tlc549的接口示意图,请编写一程序对输入模拟量采样8次,把它们的平均值存放在30h单元。(习题9-6)
单片机考试题
单片机原理与应用 练习题及评分标准。一 填空题 每空1分 1 微处理器有和若干寄存器组成。2 十进制数 47用8位二进制补码表示为。3 mcs 51中凡是字节地址能够被整除的sfr均能位寻址。4 mcs 51有4个并行io口,其中是准双向口,所以由输出转输入时必须先。5 计算机的系统总线有地址总线和...
单片机考试题
复习题。一 填空题。1 通常单片机上电复位时pc 0000 h,sp 07 h,通用寄存器则采用第 0 组。2 mcs 51单片机系列有 5 个中断源。4 指令格式由 操作码 和 操作数 这两部分组成。5 8051在物理结构上有 4 个存储空间,它们分别是 片内数据存储区 片外数据存储区 片内程序存...
单片机考试题
1.程序状态字psw格式 cy ac f0 rs1 rs0 ov f1 p cy 进位 借位标志在做位操作 布尔操作 时cy作为位累加器。ac 半进位 半借位标志,也称为辅助进位标志。f0 f1 用户标志位,留给用户使用。ov 溢出标志位。p 累加器a的奇偶标志位 p表示累加器a中1的个数的奇偶性p...