福州大学 学年第 1 学期考试B卷.docx
- 文档编号:12229646
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:11
- 大小:82.83KB
福州大学 学年第 1 学期考试B卷.docx
《福州大学 学年第 1 学期考试B卷.docx》由会员分享,可在线阅读,更多相关《福州大学 学年第 1 学期考试B卷.docx(11页珍藏版)》请在冰豆网上搜索。
福州大学学年第1学期考试B卷
课程名称微机原理与应用考试日期
考生姓名学号专业或类别
题号
一
二
三
四
五
六
七
八
总分
累分人签名
题分
30
20
50
100
得分
考生注意事项:
1、本试卷共10页,请查看试卷中是否有缺页。
2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。
教师注意事项:
如果整门课程由一个教师评卷的,只需在累分人栏目签名,题首的评卷人栏目可不签名
一、程序题(第1小题15分,第2小题10分,第3小题5分,共30分)
得分
评卷人
现有一串字符串,需要对该串按照ASCII码值进行冒泡排序。
字符串由大写的26个英文字母组成,并以ASCII字符‘$’作为结束符。
冒泡排序算法:
从第一个数据开始相邻的数进行比较,若次序不对,两数进行交换位置。
第一遍比较(N-1)次后,最大的数已到数组尾,第二遍仅需比较(N-2)次就够了,共比较(N-1)遍就完成了排序,这样共有两重循环。
福州大学2008~2009学年第1学期考试B卷
主程序如下:
DATASEGMENT
StringDB‘ADOZCMYFG$’;字符串
LenDB?
;字符串长度
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA;数据段初始化
MOVDS,AX
MOVSI,offsetString;字符串首地址
CALLStrLen;字符串长度计算子程序
MOVLen,BL
MOVBX,offsetString;数组指针初始化
MOVCH,0
MOVCL,Len;计数器CX
CALLStrOrder;调用冒泡排序子程序
MOVAX,4C00H;返回DOS
INT21h
OrderENDP;子程序结束
CODEENDS
ENDSTART
1.根据主程序,改正以下字符串长度计算子程序(注:
错误有5处,每处3分。
)入口:
SI(字符串首地址);出口:
BL(字符串长度,不含结束符)
StrLenPROC
MOVBL,0;长度值清零
STD;置字符串指令方向为:
加
L1:
LODSB;装载字符->AL
CMPAX,'$';与结束符'$'比较
JZL2;相等,结束
DECBL;长度BL=BL+1
LOOPL1;取下一个字符
L2:
IRET;结束
StrLenENDS
2.根据主程序,补充冒泡排序子程序。
入口:
BX(字符串首地址),CX(字符串长度,不含结束符);出口:
无。
StrOrderPROC;排序
;指针DI清零
DECCX;计数值=n-1
L3:
MOVDX,CX;设计数器DX,外循环次数
L4:
MOVAL,[BX+DI];取[BX+DI],与[BX+DI+1]比较
;若[BX+DI]<=[BX+DI+1]转
JBENEXT
XCHGAL,[BX+DI+1];否则两数交换
NEXT:
INCDI;比较下一个数据,DI=DI+1
;内循环
MOVCX,DX;循环次数->CX
MOVDI,0;地址返回第一个数据
;外循环
RET
StrOrderENDP
3.上题运行后String的结果是。
二、存储器接口题(本题共20分)
得分
评卷人
某8086微机系统需连接4K字ROM(末地址FFFFFH)和4K字RAM(首地址00000H),请补充8086系统总线与存储器的接线图,见图1,在括号内填入8086接口(AB0-19,DB0-15,
,
,
,
)每空0.5分,共11分;在方框中填入(与门、或门),每空1分,共4分;并补充74LS138的C、B译码输入,5分。
要求地址采用1片74138进行全译码,其他逻辑芯片数量不限。
图18086系统总线与存储器的接线图
三、综合题(本题共50分)
得分
评卷人
有一工业控制系统,由被控对象、传感器、执行器和控制器组成,具体的电路图见图2。
控制器通过传感器采样被控对象的输出信号,与给定值进行比较得到误差,经控制器计算得到控制量,控制量传输给执行器达到控制目标的实现。
传感器将需要测量的信号采集转换为模拟信号,送ADC0809(采样时钟500KHz)的通道IN5转换为数字信号;8086作为控制器,8086通过8255读取ADC0809转换的结果,与给定值比较算得误差,通过控制算法得到控制量。
执行器采用脉宽调制(PWM)方式进行控制量的实现,其高电平的时间为Bs,周期为T=20s,说明见图2。
控制周期T为20s,控制精度为0.5s。
该系统同时具有报警的功能,在测量值超出给定值±20%时,报警灯点亮进行报警。
主程序如下:
DATASEGMENT
GIVENEQU80;给定值
UkDB0;控制量
YkDB0;测量值
BDB0;PWM控制时高电平的时间
DataENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA;数据段DS初始化
MOVDS,AX
MOVUk,0;控制量初始化
MOVYk,0;测量值初始化
CALL8255A_Init;8255A初始化程序
CALL8253_Init;8253初始化程序
Next:
MOVAL,05H;设置转换的通道
CALLGather;ADC0809转换程序,出口:
AL
MOVYk,AL;保存测量值
CALLControl;控制量的计算,入口:
AL,出口:
UK
CALLOutput;控制输出,入口:
UK
MOVAL,Yk
CALLWarning;测量值报警显示;入口:
AL
JMPNext
RET
…
CODEENDS
ENDSTART
1.请补充8255A和8253的地址。
(6分)
8255A地址:
PA:
0F0H;PB:
;PC:
;Control:
8253地址:
T0:
;T1:
;T2:
;Control:
0FEH
2.根据题意,补充上述程序的8255A的初始化程序8255A_Init。
(2分)
3.根据题意,补充上述程序的8253的初始化程序8253_Init。
要求写出初值计算式。
(6分)
4.根据题意,完成ADC0809转换程序。
出口:
AL(8分)
转换流程:
(1)通过8255APC.0和PC.1、PC.2选择当前转换的通道;
(2)在STRAT和ALE加上一个正脉冲,将通道选择码锁存并启动A/D转换;
(3)转换开始后,EOC变低,查询PC.7直到变成高电平,即转换结束;
(4)转换结束后,通过8255APB读入转换后的数字量。
GatherProc
RET
GatherEndP
5.根据题意,完成控制子程序(8分)
思路:
控制算法就是根据采用的测量值和给定值GIVEN进行比较,大于等于时Uk=Uk-1;小于时Uk=Uk+1。
最后对Uk进行限幅在0~100之间,限幅的要求如下:
Uk小于0时,Uk=0;Uk大于100时,Uk=100;其他Uk不变。
入口:
AL。
程序含有4处错误,请改正。
ControlProc
SBBAL,GIVEN;测量值与给定值比较
JCLOW;
INCUk;大于Uk=Uk-1
JMPADJUST
LOW:
;小于Uk=Uk+1
DECUk
ADJUST:
;限幅处理
MOVAL,Uk
CMPAL,0;小于零的处理
JAEADJUST1
ANDUk,Uk;Uk=0
JMPControlEnd;
ADJUST1:
;大于100的处理
CMPAL,100
JAControlEnd
MOVUk,100
ControlEnd:
RET
ControlEndp
6.根据题意,完成控制输出子程序(10分)
PWM实现算法:
采用8253产生2Hz的方波作为时钟,提供给PWM作为时基。
比如产生占空比为Uk的PWM波,可算得PWM波的高电平宽度B=Uk/100*20s=Uk/5s,B为整数。
PWM波由PA.5输出。
SecondProc;查询0.5s周期。
Wait_H:
INAL,0F4H
TESTAL,01000000B
JZWait_H
Wait_L:
INAL,0F4H
TESTAL,01000000B
JNZWait_L
RET
SecondEndp;入口:
UK
OutputProc
MOVAL,Uk;计算UK/5
MOVBL,5
DIVBL
MOVCL,AL;将宽度赋值给CX
MOVCH,0
;CX=CX*2
MOVAH,0
MOVB,AX
;PA.5输出高电平
OUT0F0H,AL
PWM_H:
CALLSecond
MOVCX,20;周期为20s
SUBCX,B
ADDCX,CX;CX=CX*2
;PA.5输出低电平
OUT0F0H,AL
PWM_L:
CALLSecond
LOOPPWM_L
RET
OutputEndp
7.根据题意,完成报警子程序Warning。
入口:
AL。
当测量值超出给定值±20%时,报警灯点亮进行报警,否则报警灯熄灭。
(10分)
WarningProc
;报警状态字BL=1,报警;BL=0,正常
CMPAl,GIVEN_H;与上限值比较
JCLOW
;报警状态字=1
JMPOK
LOW:
JNCOK
MOVBL,1;报警状态字=1
OK:
TESTBL,01H
JNZLightOn
LightOff:
ANDAL,11111110B;PA.0输出低电平
LightOn:
ORAL,00000001B;PA.0输出高电平
WarningOut:
RET
GIVEN_HEQUGIVEN*1.2;报警上限值
GIVEN_LEQUGIVEN*0.8;报警下限值
WarningEndp
图2控制系统
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 福州大学 学年第 学期考试B卷 学年 学期 考试
![提示](https://static.bdocx.com/images/bang_tan.gif)