首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编制一个程序,其实现的功能为:求出内存中连续存放的20个无符号数序列的最大值和最小值,并将结果按要求存入。结果的存放形式为:按原序列存放20个需要处理的无符号数,后跟该序列的最小值和最大值(最小值在前,最大值在后)。 例如: 内存中有:23H,
编制一个程序,其实现的功能为:求出内存中连续存放的20个无符号数序列的最大值和最小值,并将结果按要求存入。结果的存放形式为:按原序列存放20个需要处理的无符号数,后跟该序列的最小值和最大值(最小值在前,最大值在后)。 例如: 内存中有:23H,
admin
2010-09-01
45
问题
编制一个程序,其实现的功能为:求出内存中连续存放的20个无符号数序列的最大值和最小值,并将结果按要求存入。结果的存放形式为:按原序列存放20个需要处理的无符号数,后跟该序列的最小值和最大值(最小值在前,最大值在后)。
例如:
内存中有:23H,45H,61H……
结果为: 23H,45H,61H…… (20个需要处理的原来的无符号数),后面跟该序列的最小值和最大值(最小值在前,最大值在后)。
部分程序已经给出,其中原始数据由过程LOAD从文件INPUT.DAT中读入以SOURCE开始的内存单元中。运算结果要求从RESULT开始的内存单元存放,由过程SAVE保存到文件OUTPUT.DAT中。
请填空BEGIN和END之间已给出的源程序使其完整,空白已经用横线标出,每行空白一般只需要一条指令,但采用功能相当的多条指令也行,考生也可以删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。
对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
【试题程序】
EXTRN LOAD:FAR,SAVE:FAR
N EQU 20
SSEG SEGMENT STACK
DB 256 DUP (?)
SSEG ENDS
DSEG SEGMENT
SOURCE DB N DUP (?)
RESULT DB N+2 DUP (0)
NAME0 DB ’INPUT.DAT’,0
NAME1 DB ’0UTPUT.DAT’,0
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG,SS:SSEG
START PROC FAR
PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DSEG
MOV DS,AX
LEA DX, SOURCE
LEA SI,NAME0
MOV CX,N
CALL LOAD
; ******** BEGIN ********
LEA SI,SOURCE
LEA DI,RESULT
MOV DL,[SI]
MOV DH,DL
MOV [DI],DL
INC SI
INC DI
MOV CX, (1)
AGAIN: MOV AL,[SI]
CMP (2)
JBE MIN
(3)
JMP NEXT
MIN: CMP (4)
JAE NEXT
MOV DL,AL
NEXT: MOV [DI],AL
INC SI
INC DI
LOOP AGAIN
MOV [DI],DL
MOV (5)
; ******** END ********
LEA DX,RESULT
LEA SI,NAME1
MOV CX,N+2
CALL SAVE
RET
START ENDP
CSEG ENDS
END START
选项
答案
(1) N-1 (2) AL,DH (3) MOV DH,AL (4) AL,DL (5) [DI+1],DH
解析
计算一个序列中最大值和最小值通常采用的方法是:从序列中取出一个数,分别当成最大值和最小值存放到两个寄存器中,然后将这两个寄存器的值分别与序列中其他的数值进行比较,如果序列中的值大于最大值寄存器或小于最小值寄存器中的值,则将那个数与寄存器中的数进行交换。这样,当序列中所有的数比较完一次以后,最大值寄存器中存放的就是该序列的最大值,最小值寄存器中存放的就是该序列的最小值。
在本程序中,最大值存放在DH寄存器中,最小值存放在DL寄存器中,首先将序列的第一个数既当作最大值也当作最小值存入DH和DL寄存器中,然后修改指针,为数据比较做准备。CX作为控制循环的寄存器,由于第一个数据已经读入,所以只需要N-1次比较就可以得出答案,即第一个空白处应填N-1。将序列中的元素取入AL寄存器以后,首先与保存最大值的DH寄存器进行比较,如果大于DH中的内容,则将AL中的数据传送到DH中,否则跳转到与DL进行比较的程序段。因此第二个空白处应填AL,DH,第三个空白处应填MOV DH,AL。与DL进行比较时,如果数据小于DL中的内容,则将数据传送到DL中,否则修改指针,取下一个数据继续进行比较。当整个序列的数据都被比较过一次以后,此时最大值已经存入了DH寄存器,最小值也已经存入了DL寄存器,并且在进行比较的同时,也将原来的序列复制到了RESULT中。因此现在只需要将DL和DH中的数据送入RESULT的最后两个单元即可。
由于指向RESULT的指针DI一直在变化,因此要直接存储,即最后一个空白处应填[DI+1],DH。
转载请注明原文地址:https://www.kaotiyun.com/show/4TgZ777K
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
在数据流中,由数据元素(或称为分量)组成更复杂的数据的方式有()。Ⅰ.顺序Ⅱ.选择Ⅲ.可选Ⅳ.重复
在通常情况下,下面的关系中不可以作为关系数据库的关系是
若要求查找姓名中第一个字为,王,的学生号和姓名。下面列出的SQL语句中()是正确的。Ⅰ.SELECTS#,SNAMEFROMSWHERESNAME=’王%’Ⅱ.SELECTS#,SNAMEFROMSWHERE
JamesMartin给出了主题数据库的概念,下述错误的是()
负责定义数据库中信息的内容和结构,定义数据的安全性和完整性约束条件,监控数据库的使用和运行等工作的人员是
计算机面向管理的应用主要是建立面向答理的计算机信息系统,处理和运用管理业务的信息,下面所列的几种计算机应用系统中,通常认为哪一种不属于面向管理的应用?()
在三级模式之间引入两级映像,其主要功能之一是
利用计算机对锅炉的气温、液压、水位进行调节,当这些物理量偏离规定工况时,计算机就对这一偏移进行控制,这属于计算机的【】应用范畴。
环境分析有利于确定信息系统的【】、投资和技术水平乃至功能和目标。
假设DAT为字节变量,下列三条指令中功能相同的是哪几条?Ⅰ.MOVAL,DAT[2]Ⅱ.MOVAL,DAT+2Ⅲ.MOVAL,2[DAT]
随机试题
CT扫描,听小骨应显示在
健康促进的重点是
摄影曝光时kV表有所下降,这一现象的正确解释是
某住宅小区建设项目,每栋住宅楼可以作为一个()进行质量控制。
【背景资料】某市建筑公司承建供电公司职工培训楼工程。该工程含地下1层,地上12层,建筑面积24000m2,钢筋混凝土框架构架,计划竣工日期为2014年8月8日。2014年4月28日,市建委有关管理部门按照《建筑施工安全检查标准》等有关规
债券因有固定的票面利率和期限,相对于股票价格而言市场价格比较稳定。( )
某银行同意为某公司贷款2亿元,用于某固定资产投资项目,该项目总投资额为3亿元,其余项目资金为借款人自有资金。9月份该借款人部分贷款交付方式为自主支付,信息如下请根据以上情况完成下列问题。[2016年6月真题]关于9月8日采购钢材款480万元和200
商业银行的风险管理主要偏重于资产业务的风险管理,强调保持商业银行资产的流动性。这一阶段是商业银行的()。
员工公平是指()。
已知某公司与存货有关的信息如下:年需求存货数量30000件(假设每年360天),每件购买价格为100元,库存储存成本是商品买价的30%,每次订货成本60元,公司希望的安全储备量为750件,订货提前期为15天,订货数量只能按100的倍数(四舍五入)确定。要
最新回复
(
0
)