单片机模拟试卷1答案
![单片机模拟试卷1答案](https://img.360docs.net/imgc2/1mos2757fgl740jsbgqke3dkz4g2ukpq-21.webp)
![单片机模拟试卷1答案](https://img.360docs.net/imgc2/1mos2757fgl740jsbgqke3dkz4g2ukpq-32.webp)
单片机应用技术期末模拟试卷1参考答案
一、单项选择题。(每题2分,共22分)
1.8位二进制所表示的无符号整数,其相应的十进制数范围是(A )A .0-255 B .1-256 C .1-255 D .0-256
2.字母“b ”的ASC Ⅱ码是(D )
A . 11H
B .OBH
C .BOH
D .62H
3.十进制数-1用二进制补码表示,该补码是(A )0
A . FFH
B .00H
C .FEH
D .81H
4.8031单片机外接ROM 时,使用(A )引脚来选通74LS373芯片A .ALE B .SEN P C .EA D WR
5.如果8031单片机的一个机器周期为2微秒,则其时钟频率为(A )MHzA .6 B .8 C .12 D .16
6.8031单片机内含定时器和串行口的个数分别为( A )
A . 2和1
B .1和2
C .3和1
D .2和2
7.对程序存储区数据传送,应采用助记符为(C )
A . MOV
B .MOVX
C .MOVC
D .PUSH
8.下列各指令中(A )才属于MCS -51指令系统的位指令
A . ANLC.,/bit
B .XRLC,bit
C .ORLbit,C
D .MOVC,/bit
9.8031单片机外部中断0请示信号输入的引脚是(B )
A . RXD
B .INTO
C .TO
D .WR
10.8031单片机的定时器1的中断程序入口地址为(A )
A .001BH
B .0003H
C .000BH
D .0013H
11.8031片可扩展数据存储器( A )KB0
A . 64
B .32
C .8
D .4
二、填空题(每题2分,共24分)
1.87H 是用8位二进制原码表示的十六进制数,其相应的十进制数是_—7(答对了给2分;写出负号,数值不对给0.5分)__
2.假设2个一字节的十六进制数9FH ,81H 相加的和仍然为8位二进制数,那么相加后其进位标志为_1 _(1或0),溢出标志为__1_(0或1)。
3.8031单片机中IP =0EH ,IE =8DH 时,CPU 能响应的优先权最低的中断源是__数据 _。
IP 寄存器格式
IE 寄存器格式
4.8031.单片机中,T0初始后让其开始计数,应将TCON 中的____ TR0___位置1。
T1方式字段 T0方式字段
TCON 寄存器格式
5.8031.单片机内部数据RAM 中的位寻址区的地址范围是___20H~2FH ____
6.某8031单片机时钟频率为12MHz ,现将T0设置为定时方式1,定时时间为1毫秒,其计数器中的时间常数初值应为_____0FC18H ____(写成四位十六进制数)
7.已知(31H )=21H ,(32H )=0,4H 执行下列指令组后(31H )=_____04H ________(32H )=________21H ________
PUSH 31H
PUSH 32H
POP 31H
POP 32H
8.如要选择2组的工作寄存器交换数据,可先执行指令____ SETB PSW.4_____
PSW (地址为DOH )的格为
9.执行下列指令组后,(A)=_____63H _______标志位(OV )=____1_____
(P)=__0____
MOV A,#OB4H
ADD A,#001H
SUBB A,#51H
10.执行下列指令组后,累加器(A )=______ F9H _______。它与R1中内容的关系是__(A )是(R1)的补码____
MOV R1,#87H
MOV A ,R1
CPL A
INC A
SETB ACC.7
11.下列伪指令汇编后,存放25H 的单元及LOOP 的值分别是____0106H__________=25H
LOOP =__________2100H _____。
ORG 0100H
TAB : DB ‘ABC ’
MOON : DS 03
BUF : DB 25H
LOOP EQU 2100H
12. 8031.单片机有4个口,其中______ P1_____口可以直接应用于I/O 口。
三、改错题(每题2分,共6分)
下面的程序或程序段存在一个错误或不妥处,请在其下划一条线,并将改正的内容写到每小题的空白处。
1.某8031单片机时钟频率12MHz ,T1为工作方式1,2毫秒定时中断,其部分初始化程序如下,请指出错误,并改正之。 MOV TMOD ,#01H
MOV TH1,#0F8H
MOV TL1,#30H
MOV IP ,#8
MOV IE ,#88H
………
T1方式字段 T0方式字段
TMOD 寄存器格式
IP 寄存器格式
IE 寄存器格式
第一行应为 MOV TMOD ,#10H 指出错误1分,改对1分
2.下列程序要完成16位无符号数相加,两数分别存于30H ,31H 和40H ,41H (低位在前),并把和存于30H ,31H 中(设和无进位输出)。请指出错误,并改正之。
MOV A ,30H
ADD A ,40H
MOV 30H ,A
MOV A ,31H
ADD A ,41H
MOV 31H ,A
错误:ADD A ,41H 正确:ADDC A ,41H
3.下列延时子程序,具有保护现场的指令(此处欲保护A 及PSW 两个特殊功能寄存器)
请指出错误,并改正之。
DLY0:PUSH ACC
PUSH PSW
MOV R1,#32H
DLY1:NOP
DJNZ R1,DL Y1
POP ACC
POP PSW
RET
错误:POP ACC正确:POP PSW
POP PSW POP ACC
四、程序阅读题(每题8,共16分)
1.阅读下列程序,说明程序的功能
MOV DPTR,#DATA1
LOOP:MOV CONT,#00H
HERE:JZ HERE
INC DPTR
INC DPTR
SJMP LOOP
功能:统计首址为DATA1的片内RAM中的数组在出现0以前数据的个数(不包括0,且小于255)并存于CONT单元中。
片内RAM首址DATA12分
统计数组长度(不包括0)2分
在出现0以前的数组2分
数组长度小于255,存于CONT单元。2分
2.见下图,通过8031单片机的P1口接8只发光二极管,读如下程序后回答问题:
ORG0000H
LJMP0200H
ORG0200H
START:MOV A,#01H
LOOP:MOV P1,A
LCALL D2S;调用延时2秒子程序
RL A;A循环左移
SJMP LOOP
D2S:……;子程序略
RET
END
1).第一次调用子程序时,哪个发光二极管亮?
2)第二次调用子程序时,哪个发光二极管亮?
3)第八次调用子程序时,哪个发光二极管亮?
4)第九次调用子程序时,哪个发光二极管亮?
1).L1(最上面的发光二级管)亮,即P1.0C对应的二极管亮2).L2亮3).L8亮(最下面的二极管)4).L1又亮
五、程序设计题(共20分)
在3500H为首址的片外RAM区中,有20个补码表示的数,欲编程序,把其中正数传到20H为首址的片内RAM区中,负数不传送,请补全下列程序。
MOV DPTR,#3500H
MOV R2,#14H
MOV R0,#20HU
LOOP:MOVX A,@DPTR
JB ACC.7,COM
MOV @RO,A
INC RO
COM:INC DPTR
DJNZ R2,LOOP
HERE:SJMP HERE
要点:(1)正负数判断
(2)片外RAM和片内RAM传送指令
(3)循环程序中的循环控制部分,如修改计数器,检测结束条件。
六、应用题(共12分)
8031外部扩展DAC0831芯片,见右图,输入寄存器为1B28H,DAC寄存器为1B29H,假定00H对应D/A输出0V,FFH对应D/A输出5V,阅读如下程序,回答问题
ORG0000H
LJMP START
ORG0200H
START:MOV DPTR,#1B28H
MOV A,#0
LP1:MOVX@DPTR,A
INC DPTR
MOVX@DPTR,A
ACALL D1MS;调用1ms子程序
INC A
CJNE A,#0FFH,LP1
NOP
LP2:MOV DPTR,#1B28H
MOVX@DPTR,A
INC DPTR
MOVX@DPTR,A
ACALLL D1MS;调用1ms(1毫秒)子程序
DEC A
CJNE A,#0,LP2
SJMP LP1
延时1ms(1毫秒)子程序略去
1.该程序运行后,D/A转换输出___________________波形
2.波形周期为___________________秒(忽略指令时间)1.三角波;6分2.0.51秒;6分