通信工程专业微机原理与应用上机考试题目及答案代码.docx
- 文档编号:7013981
- 上传时间:2023-01-16
- 格式:DOCX
- 页数:16
- 大小:100.62KB
通信工程专业微机原理与应用上机考试题目及答案代码.docx
《通信工程专业微机原理与应用上机考试题目及答案代码.docx》由会员分享,可在线阅读,更多相关《通信工程专业微机原理与应用上机考试题目及答案代码.docx(16页珍藏版)》请在冰豆网上搜索。
通信工程专业微机原理与应用上机考试题目及答案代码
1、(80分)
(1)编程将D1、D2两个存储单元中的无符号字节数相加,结果放到D3存储单元(结果不超过255)。
(2)设8255A的A口接8个发光二极管,B口接8个开关,要求编一程序使8个开关控制对应的发光二极管的亮和灭。
已知8255A的端口地址从300H-303H。
2、(80分)
(1)编程将D1、D2两个存储单元中的无符号字节数相减,结果放到D3存储单元(结果不超过255)。
(2)设8255A的B口接8个发光二极管,A口接8个开关,要求编一程序使8个开关控制对应的发光二极管的亮和灭。
已知8255A的端口地址从300H-303H。
3、(80分)
(1)假设0~9的平方值存放在DATA1开始的内存中,取出“3”所对应的平方值。
(2)设8255A的C口的8根数据线接8个发光二极管,A口的8根数据线接8个开关,要求编一简单程序使8个开关控制对应的发光二极管的亮和灭。
已知8255A的端口地址从300H-303H。
4、(80分)
(1)设8255A的C口的8根数据线接8个发光二极管,A口的8根数据线接8个开关,要求编一简单程序使8个开关控制对应的发光二极管的亮和灭。
已知8255A的端口地址从300H-303H。
(2)X、Y、Z都为字节定义的数据,将X+Y+Z将结果放在SUM单元中(结果不超过255)。
5、(80分)
(1)设8255A的B口接8个发光二极管,C口接8个开关,要求编一程序使8个开关控制对应的发光二极管的亮和灭。
已知8255A的端口地址从300H-303H。
(2)X、Y、Z都为字节定义的数据,将X+Y-Z将结果放在SUM单元中(结果不超过255)。
6、(80分)
(1)8253的计数器2工作在方式0,设计数初值为4,输出OUT2接发光二极管,CLK2接手动脉冲信号,请问,按几下手动脉冲发生器使发光二极管熄灭?
电路连接如下图所示。
(2)编程将缓冲区buf1中的8个字数据传送到buf2开始的缓冲区中。
7、(80分)
(1)8253的计数器1工作在方式3,设计数初值为4,输出OUT1接发光二极管,CLK1接手动脉冲信号,按几下手动脉冲发生器,可改变发光二极管的状态?
电路连接如下图所示。
(2)将AL的内容乘以10,使用移位指令实现(结果不超过255)
8、(80分)
(1)在首地址为BUFF1的内存缓冲区中,存放着9个带符号字节数据,找出其中的最大数,并将此数存入MAX单元中。
datasegment
定义数据
dataends
codesegment
assumecs:
code,ds:
data
start:
补全程序
stop:
movah,4ch
int21h
codeends
endstart
(2)8253的计数器2工作在方式0,设计数初值为4,输出OUT2接发光二极管,CLK2接手动脉冲信号,请问,按几下手动脉冲发生器使发光二极管熄灭?
电路连接如下图所示。
9、(80分)
(1)在首地址为BUFF1的内存缓冲区中,存放着9个带符号字节数据,找出其中的最小数,并将此数存入MIN单元中。
datasegment
定义数据
dataends
codesegment
assumecs:
code,ds:
data
start:
补全程序
stop:
movah,4ch
int21h
codeends
endstart
(2)8253的计数器1工作在方式3,设计数初值为4,输出OUT1接发光二极管,CLK1接手动脉冲信号,按几下手动脉冲发生器,可改变发光二极管的状态?
(80分)电路连接如下图所示。
10、(90分)
(1)8253计数器1的OUT1接有一发光二极管,要使发光二极管以点亮2S,熄灭2S的间隔工作,地址为300H~303H。
CLK输入时钟频率为1MHZ。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
(2)X、Y、Z都为字节定义的数据,将X+Y+Z将结果放在SUM单元中(结果不超过255)。
11、(90分)
(1)8253计数器2的OUT2接有一发光二极管,要使发光二极管以点亮1S,熄灭1S的间隔工作,地址为300H~303H。
CLK输入时钟频率为0.5MHZ。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
(2)X、Y、Z都为字节定义的数据,将X+Y-Z将结果放在SUM单元中(结果不超过255)。
12、(90分)
(1)统计一组数当中正数、负数、零的个数,分别放到DH、DL、BH中。
datasegment
tabledb-1,-128,0,0,0,1,15,7,127
dataends
codesegment
assumecs:
code,ds:
data
start:
补全程序
stop:
movah,4ch
int21h
codeends
endstart
(2)8253的计数器1工作在方式3,设计数初值为4,输出OUT1接发光二极管,CLK1接手动脉冲信号,按几下手动脉冲发生器,可改变发光二极管的状态?
电路连接如下图所示。
13、(90分)
(1)已知内存单元sty1中的内容为78H,编程统计其包含1的个数,并将结果存入SUM单元。
datasegment
sty1db78H
sumdb?
dataends
codesegment
assumecs:
code,ds:
data
start:
补全程序
stop:
movah,4ch
(2)8253的计数器2工作在方式0,设计数初值为4,输出OUT2接发光二极管,CLK2接手动脉冲信号,请问,按几下手动脉冲发生器使发光二极管熄灭?
电路连接如下图所示。
14、(90分)
(1)8255的PB0接一个拨动开关,8255的A口接8个发光二极管,当开关向上拨动即(K=0)时,A口所接发光二级管的低4位亮、高4位灭,反之A口所接发光二级管的低4位灭、高4位亮。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
(2)将AL的内容乘以10,使用移位指令实现(结果不超过255)。
15、(90分)
(1)用8255芯片的A口接8个LED发光二极管,利用软件延迟的方法实现发光二极管左移循环点亮(每次只有2位亮),时间间隔0.5S。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
(2)编程将D1、D2两个存储单元中的无符号字节数相减,结果放到D3存储单元(结果不超过255)。
16、(100分)
(1)用8255芯片的C口接8个LED发光二极管,利用软件延迟的方法实现发光二极管右移循环点亮(每次只有1位亮),时间间隔1S。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
(2)采用查表法实现将两个两位的十六进制数转换为ASCII码并在屏幕显示,设被转换的两个十六进制数在hex开始的内存单元中。
17、(100分)
(1)用一片8255A循环检测K1、K2的状态,控制红、绿、黄三灯的点亮,
要求:
K1闭合,K2闭合时,红灯亮;
K1闭合,K2断开时,绿灯亮;
K1断开,K2闭合时,黄灯亮;
K1断开,K2断开时,红灯亮。
(B口接开关K1、K2,A口接LED灯)
已知8255A的端口地址为2F0H~2F3H,编制初始化程序以及控制程序。
codesegment
assumecs:
code
补全程序
codeends
endstart
(2)实现将两个字节数据相加,存放到一个结果单元中,采用查表法查到其对应的ASCII码值,并在屏幕上显示16进制的结果。
18、(100分)
(1)用一片8255A循环检测K1、K2的状态,控制红、绿、黄三灯的点亮,
要求:
K1闭合,K2闭合时,绿灯亮;
K1闭合,K2断开时,红灯亮;
K1断开,K2闭合时,黄灯亮;
K1断开,K2断开时,绿灯亮。
(C口接开关K1、K2,B口接LED灯)
已知8255A的端口地址为300H~303H,编制初始化程序以及控制程序。
codesegment
assumecs:
code
补全程序
codeends
endstart
(2)统计一组数当中正数、负数、零的个数,分别放到DH、DL、BH中。
datasegment
tabledb-1,-128,0,0,0,1,15,7,127
dataends
codesegment
assumecs:
code,ds:
data
start:
补全程序
stop:
movah,4ch
int21h
codeends
endstart
19、(100分)
(1)利用8259和8255芯片,来实现8255的A口所接的发光二极管的循环移位熄灭,从最低位开始所接的发光二极管开始实现,例如PA0接的led灯灭,其他灯亮,按下脉冲发生器后,PA1所接的LED灯灭,其他灯亮,以此类推,循环执行,电路连接如下图所示。
(2)编程将D1、D2两个存储单元中的无符号字节数相加,结果放到D3存储单元(结果不超过255)。
20、(90分)
(1)将AL的内容乘以10,使用移位指令实现(结果不超过255)
(2)8253计数器1的OUT1接有一发光二极管,要使发光二极管以点亮2S,熄灭2S的间隔工作,地址为300H~303H。
CLK输入时钟频率为1MHZ。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
21、(90分)
(1)编程将缓冲区sbuf中的16个字节数据传送到dbuf开始的缓冲区中。
(2)8253计数器2的OUT2接有一发光二极管,要使发光二极管以点亮1S,熄灭1S的间隔工作,地址为300H~303H。
CLK输入时钟频率为0.5MHZ。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
22、(90分)
(1)编写计算1+2+3+…+99+100的程序,要求把结果存放于DS:
0300H单元开始的内存单元中。
(2)8255的PA0接一个拨动开关K,8255的C口接8个发光二极管,当开关向上拨动即(K=0)时,C口所接发光二级管的高4位亮、低4位灭,反之C口所接发光二级管的高4位灭、低4位亮。
23、(100分)
(1)8255的PA0接一个拨动开关K,8255的C口接8个发光二极管,当开关向上拨动即(K=0)时,C口所接发光二级管的高4位亮、低4位灭,反之C口所接发光二级管的高4位灭、低4位亮。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
(2)实现将两个字节数据相加,存放到一个结果单元中,采用查表法查到其对应的ASCII码值,并在屏幕上显示16进制的结果。
24、(90分)
(1)DATA单元自定义了5个字数据,实现5个数求和,并且把结果放到自定义的缓冲单元BUFF中。
(2)用8255芯片的A口接8个LED发光二极管,利用软件延迟的方法实现发光二极管右移循环点亮(只有1位亮),时间间隔0.5S。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
25、(80分)
(1)X、Y、Z都为字节定义的数据,将X+Y+Z将结果放在SUM单元中(结果不超过255)。
(2)8253的计数器1工作在方式3,设计数初值为4,输出OUT1接发光二极管,CLK1接手动脉冲信号,按几下手动脉冲发生器,可改变发光二极管的状态?
电路连接如下图所示。
26、(100分)
(1)采用查表法实现将两个两位的十六进制数转换为ASCII码并在屏幕显示,设被转换的两个十六进制数在hex开始的内存单元中。
(2)用8255芯片的A口接8个LED发光二极管,利用软件延迟的方法实现发光二极管右移循环点亮(只有1位亮),时间间隔0.5S。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
27、(100分)
(1)X、Y、Z都为字节定义的数据,将X+Y-Z将结果放在SUM单元中(结果不超过255)。
(2)用一片8255A循环检测K1、K2的状态,控制红、绿、黄三灯的点亮,
要求:
K1闭合,K2闭合时,绿灯亮;
K1闭合,K2断开时,红灯亮;
K1断开,K2闭合时,黄灯亮;
K1断开,K2断开时,绿灯亮。
(C口接开关K1、K2,B口接LED灯)
已知8255A的端口地址为300H~303H,编制初始化程序以及控制程序。
codesegment
assumecs:
code
补全程序
codeends
endstart
28、(100分)
(1)实现将两个字节数据相加,存放到一个结果单元中,采用查表法查到其对应的ASCII码值,并在屏幕上显示16进制的结果。
(2)8253计数器1的OUT1接有一发光二极管,要使发光二极管以点亮2S,熄灭2S的间隔工作,地址为300H~303H。
CLK输入时钟频率为1MHZ。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
29、(90分)
(1)编程将缓冲区buf1中的8个字数据传送到buf2开始的缓冲区中。
(2)8255的PB0接一个拨动开关,8255的A口接8个发光二极管,当开关向上拨动即(K=0)时,A口所接发光二级管的低4位亮、高4位灭,反之A口所接发光二级管的低4位灭、高4位亮。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
30、(100分)
(1)在首地址为TABLE的内存缓冲区中,存放着8个带符号字数据,找出其中的最小数,并将此数存入MIN单元中。
datasegment
定义数据
dataends
codesegment
assumecs:
code,ds:
data
start:
补全程序
stop:
movah,4ch
int21h
codeends
endstart
(2)8255的PA0接一个拨动开关K,8255的C口接8个发光二极管,当开关向上拨动即(K=0)时,C口所接发光二级管的高4位亮、低4位灭,反之C口所接发光二级管的高4位灭、低4位亮。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
31、(100分)
(1)在首地址为TABLE的内存缓冲区中,存放着8个带符号字数据,找出其中的最大数,并将此数存入MAX单元中。
datasegment
定义数据
dataends
codesegment
assumecs:
code,ds:
data
start:
补全程序
stop:
movah,4ch
int21h
codeends
endstart
(2)用8255芯片的C口接8个LED发光二极管,利用软件延迟的方法实现发光二极管右移循环点亮(每次只有1位亮),时间间隔1S。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
32、(100分)
(1)统计一组数当中正数、负数、零的个数,分别放到BH、BL、DL中。
datasegment
tabledb-1,-128,0,0,0,1,15,7,127
dataends
codesegment
assumecs:
code,ds:
data
start:
补全程序
stop:
movah,4ch
int21h
codeends
endstart
(2)用8255芯片的A口接8个LED发光二极管,利用软件延迟的方法实现发光二极管左移循环点亮(每次只有2位亮),时间间隔0.5S。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
33、(100分)
(1)用8255芯片的A口接8个LED发光二极管,利用软件延迟的方法实现发光二极管右移循环点亮(只有1位亮),时间间隔0.5S。
codesegment
assumecs:
code
start:
补全程序
codeends
endstart
(2)已知内存单元sty1中的内容为78H,编程统计其包含1的个数,并将结果存入SUM单元。
datasegment
sty1db78H
sumdb?
dataends
codesegment
assumecs:
code,ds:
data
start:
补全程序
stop:
movah,4ch
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通信工程 专业 微机 原理 应用 上机 考试 题目 答案 代码