内容正文:
编写说明:四川省普通高校对口招生专业理论考试《电子信息类专业考纲百套卷》,依据《四川省普通高校对口招生电子信息类专业课考试纲要》编写。每门课程均分三层训练:基础层(具象化支架)拆解考点为微目标,紧扣考纲 “掌握”“理解” 要求编写考点训练卷;巩固层(关联性支架)强化知识交叉与场景关联,按考纲专题编专题训练卷;应用层(引导性支架)聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第10卷,按《单片机原理及应用》范围和要求编写。具体内容为:单片机循环程序读识(三重循环);单片机循环程序编写(两重循环);延时子程序编写。
四川省《电子信息类考纲百套卷》 第10卷
《单片机原理及应用》
循环程序 考点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共15小题,每题3分,共45分)
1.DJNZ R6,LOOP 指令占用的机器周期数是( )
A.1
B.2
C.3
D.4
【答案】B
【解析】DJNZ 属于双机器周期指令。
2. 下面程序段属于( )
DELAY:MOV R5,#10
D1:MOV R6,#50
D2:DJNZ R6,D2
DJNZ R5,D1
RET
A. 单重循环
B. 二重循环
C. 三重循环
D. 无条件死循环
【答案】B
【解析】R5 作为外层循环计数器、R6 内层计数器,两层 DJNZ 嵌套,属于二重循环。
3. 执行如下延时程序,内层循环D2一共循环( )
DELAY:MOV R4,#03H
D1:MOV R5,#04H
D2:DJNZ R5,D2
DJNZ R4,D1
RET
A.3 次
B.4 次
C.7 次
D.12 次
【答案】D
【解析】外层 R4 初值 3,外层每循环 1 次内层完整执行 4 次,总次数 = 3×4 =12 次。
4. 执行程序段后 R3、R4 的值分别为( )
MOV R3,#02H
D0:MOV R4,#03H
D1:DJNZ R4,D1
DJNZ R3,D0
SJMP $
A.R3=00H,R4=00H
B.R3=02H,R4=03H
C.R3=01H,R4=00H
D.R3=00H,R4=03H
【答案】A
【解析】两层循环全部执行完毕,两个循环计数器最终都会递减为 0。
5. 阅读下面三重循环延时子程序,中层循环标号是( )
DELAY:MOV R2,#20
D0:MOV R3,#50
D1:MOV R4,#100
D2:DJNZ R4,D2
DJNZ R3,D1
DJNZ R2,D0
RET
A.DELAY
B.D0
C.D1
D.D2
【答案】C
【解析】D2 最内层,D1 中层,D0 最外层。
6.12MHz 晶振下,若R7=20;则执行 D2:DJNZ R7,D2需耗时( )
A.20μs
B.40μs
C.10μs
D.2μs
【答案】B
【解析】DJNZ 指令为双周期指令单次 2μs;20×2μs = 40μs。
7.执行下面程序,A 最后的结果是( )
MOV A,#01H
MOV R0,#03H
LOOP:ADD A,#02H
DJNZ R0,LOOP
SJMP $
A.07H
B.09H
C.05H
D.03H
【答案】A
【解析】初始 A=1,循环执行 3 次,每次加2:1+2×3 =7=07H。
8.下列程序可以实现原地无限死循环的是( )
A.LOOP:DJNZ R7,LOOP
B.LOOP:SJMP LOOP
C.LOOP:MOV R7,#01H
D.LOOP:RET
【答案】B
【解析】SJMP LOOP无条件跳转到自身标号,构成死循环。
9.调用延时子程序的正确指令是( )
DELAY:MOV R5,#10
D1:DJNZ R5,D1
RET
A.JMP DELAY
B.LCALL DELAY
C.DJNZ DELAY
D.SJMP DELAY
【答案】B
【解析】LCALL 为子程序长调用指令,执行完子程序遇到 RET 自动返回主程序。
10. 执行下面二重循环,外层一共循环( )
DELAY:MOV R6,#04H
D1:MOV R7,#05H
D2:DJNZ R7,D2
DJNZ R6,D1
SJMP $
A.4 次
B.5 次
C.9 次
D.20 次
【答案】A
【解析】R6=04H,从 4 递减到 0,外层一共循环 4 轮。
11. 已知12M 晶振,要编写较长时间延时,优先采用下面哪种结构。( )
A. LOOP:DJNZ R7,LOOP
B.D1:MOV R6,#100
D2:DJNZ R6,D2
DJNZ R7,D1
C.LOOP:NOP
SJMP LOOP
D.MOV R7,#0FFH
【答案】B
【解析】选项 B 属于二重嵌套循环,可以获得更长延时时间。
12.下列关于延时子程序说法错误的是( )
A. 延时子程序以 RET 指令结束
B. 多重循环可以延长延时时间
C. 软件延时时间不受晶振频率影响
D. 延时可依靠 CPU 空循环消耗时间
【答案】C
【解析】机器周期时长由晶振频率决定,晶振改变,软件延时时间随之改变。
13.下面三重延时程序,控制内层循环次数的寄存器是( )
DELAY:MOV R2,#10
D0:MOV R3,#30
D1:MOV R4,#80
D2:DJNZ R4,D2
DJNZ R3,D1
DJNZ R2,D0
RET
A.R2
B.R3
C.R4
D.R0
【答案】C
【解析】R4 控制 D2 内层循环。
14.12MHz 晶振,执行一条 NOP 空指令后,延时( )
A.1μs
B.2μs
C.1ms
D.2ms
【答案】A
【解析】NOP 单周期指令,12M 晶振 1 机器周期 = 1 μs。
15.延时子程序结束必须使用( )
A.SJMP $
B.RET
C.NOP
D.DJNZ
【答案】B
【解析】RET 子程序返回指令,用来回到主程序断点位置。
二、判断题(本大题共10小题,每题3分,共30分)
1. 多重循环延时程序,内层循环必须写在外层循环标号内部。( )
【答案】√
2.R7 初始值为00H,执行D2:DJNZ R7,D2程序时,该程序只会执行 1 次。( )
【答案】×
3. 软件延时子程序只能使用一重循环,不能嵌套多重循环。( )
【答案】×
4. 延时子程序最后一条指令必须为 RET。( )
【答案】√
5.12MHz 晶振下 DJNZ 指令执行时间固定是 1μs。( )
【答案】×
6. 三重循环延时程序,需要三层 DJNZ 嵌套。( )
【答案】√
7. 调用延时子程序指令 LCALL,不会改变任何工作寄存器的值。( )
【答案】×
8. 单重循环最大可实现延时时间很短,长延时必须多重循环。( )
【答案】√
9.NOP 空操作指令,可以用来微调精确延时时间。( )
【答案】√
10.编写二重延时子程序,内层循环计数器只能固定选用R0和 R1 寄存器。( )
【答案】×
三、分析计算题(本大题共2小题,共25分)
1.下列程序段实现的功能为:设有40个工作单元,其首址为外部存储器1000H单元,则40个工作单元全部需清零。(10分)
CLER: ① ;将A清零
MOV DPTR, ② ;工作首址送指针
MOV R2, ③ ;置循环次数
LOOP:MOVX @DPTR,A
④ ;指向下一个单元
⑤ R2,LOOP ;控制循环
RET
请将程序补充完整:
①
②
③
④
⑤
【答案】:
①CLR A
②#1000H
③#40
④INC DPTR
⑤ DJNZ
2. 编写一个延时20ms的子程序(晶振频率为12MHZ)。(15分)
【答案】 :晶振频率为12MHZ,则一个机器周期的时间为1μs;执行一次DJNZ指令需耗时2μs;现需延时20ms,应采用两重循环,内外层循环数都应为100(此处循环数还可设置成其它值,只需两个数循环数的乘积等于10000)。故程序如下:
D20ms:MOV R0,#100
D0: MOV R1,#100
D1: DJNZ R1,D1
DJNZ R0,D0
RET
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:四川省普通高校对口招生专业理论考试《电子信息类专业考纲百套卷》,依据《四川省普通高校对口招生电子信息类专业课考试纲要》编写。每门课程均分三层训练:基础层(具象化支架)拆解考点为微目标,紧扣考纲 “掌握”“理解” 要求编写考点训练卷;巩固层(关联性支架)强化知识交叉与场景关联,按考纲专题编专题训练卷;应用层(引导性支架)聚焦真题突破,结合知识模块与教材编写课程综合卷。
本试卷是第10卷,按《单片机原理及应用》范围和要求编写。具体内容为:单片机循环程序读识(三重循环);单片机循环程序编写(两重循环);延时子程序编写。
四川省《电子信息类考纲百套卷》 第10卷
《单片机原理及应用》
循环程序 考点训练卷
考试时间60分钟 满分100分
班级 姓名 学号 成绩
一、单项选择题(本大题共15小题,每题3分,共45分)
1.DJNZ R6,LOOP 指令占用的机器周期数是( )
A.1
B.2
C.3
D.4
2. 下面程序段属于( )
DELAY:MOV R5,#10
D1:MOV R6,#50
D2:DJNZ R6,D2
DJNZ R5,D1
RET
A. 单重循环
B. 二重循环
C. 三重循环
D. 无条件死循环
3. 执行如下延时程序,内层循环D2一共循环( )
DELAY:MOV R4,#03H
D1:MOV R5,#04H
D2:DJNZ R5,D2
DJNZ R4,D1
RET
A.3 次
B.4 次
C.7 次
D.12 次
4. 执行程序段后 R3、R4 的值分别为( )
MOV R3,#02H
D0:MOV R4,#03H
D1:DJNZ R4,D1
DJNZ R3,D0
SJMP $
A.R3=00H,R4=00H
B.R3=02H,R4=03H
C.R3=01H,R4=00H
D.R3=00H,R4=03H
5. 阅读下面三重循环延时子程序,中层循环标号是( )
DELAY:MOV R2,#20
D0:MOV R3,#50
D1:MOV R4,#100
D2:DJNZ R4,D2
DJNZ R3,D1
DJNZ R2,D0
RET
A.DELAY
B.D0
C.D1
D.D2
6.12MHz 晶振下,若R7=20;则执行 D2:DJNZ R7,D2需耗时( )
A.20μs
B.40μs
C.10μs
D.2μs
7.执行下面程序,A 最后的结果是( )
MOV A,#01H
MOV R0,#03H
LOOP:ADD A,#02H
DJNZ R0,LOOP
SJMP $
A.07H
B.09H
C.05H
D.03H
8.下列程序可以实现原地无限死循环的是( )
A.LOOP:DJNZ R7,LOOP
B.LOOP:SJMP LOOP
C.LOOP:MOV R7,#01H
D.LOOP:RET
9.调用延时子程序的正确指令是( )
DELAY:MOV R5,#10
D1:DJNZ R5,D1
RET
A.JMP DELAY
B.LCALL DELAY
C.DJNZ DELAY
D.SJMP DELAY
10. 执行下面二重循环,外层一共循环( )
DELAY:MOV R6,#04H
D1:MOV R7,#05H
D2:DJNZ R7,D2
DJNZ R6,D1
SJMP $
A.4 次
B.5 次
C.9 次
D.20 次
11. 已知12M 晶振,要编写较长时间延时,优先采用下面哪种结构。( )
A. LOOP:DJNZ R7,LOOP
B.D1:MOV R6,#100
D2:DJNZ R6,D2
DJNZ R7,D1
C.LOOP:NOP
SJMP LOOP
D.MOV R7,#0FFH
12.下列关于延时子程序说法错误的是( )
A. 延时子程序以 RET 指令结束
B. 多重循环可以延长延时时间
C. 软件延时时间不受晶振频率影响
D. 延时可依靠 CPU 空循环消耗时间
13.下面三重延时程序,控制内层循环次数的寄存器是( )
DELAY:MOV R2,#10
D0:MOV R3,#30
D1:MOV R4,#80
D2:DJNZ R4,D2
DJNZ R3,D1
DJNZ R2,D0
RET
A.R2
B.R3
C.R4
D.R0
14.12MHz 晶振,执行一条 NOP 空指令后,延时( )
A.1μs
B.2μs
C.1ms
D.2ms
15.延时子程序结束必须使用( )
A.SJMP $
B.RET
C.NOP
D.DJNZ
二、判断题(本大题共10小题,每题3分,共30分)
1.多重循环延时程序,内层循环必须写在外层循环标号内部。( )
2.R7 初始值为00H,执行D2:DJNZ R7,D2程序时,该程序只会执行 1 次。( )
3.软件延时子程序只能使用一重循环,不能嵌套多重循环。( )
4.延时子程序最后一条指令必须为 RET。( )
5.12MHz 晶振下 DJNZ 指令执行时间固定是 1μs。( )
6.三重循环延时程序,需要三层 DJNZ 嵌套。( )
7.调用延时子程序指令 LCALL,不会改变任何工作寄存器的值。( )
8.单重循环最大可实现延时时间很短,长延时必须多重循环。( )
9.NOP 空操作指令,可以用来微调精确延时时间。( )
10.编写二重延时子程序,内层循环计数器只能固定选用R0和 R1 寄存器。( )
三、分析计算题(本大题共2小题,共25分)
1.下列程序段实现的功能为:设有40个工作单元,其首址为外部存储器1000H单元,则40个工作单元全部需清零。(10分)
CLER: ① ;将A清零
MOV DPTR, ② ;工作首址送指针
MOV R2, ③ ;置循环次数
LOOP:MOVX @DPTR,A
④ ;指向下一个单元
⑤ R2,LOOP ;控制循环
RET
请将程序补充完整:
①
②
③
④
⑤
2. 编写一个延时20ms的子程序(晶振频率为12MHZ)。(15分)
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$