首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编制一个程序,使其实现如下功能:将内存中连续存放的10个十六位二进制无符号数按照从小到大的顺序排列。 例如: 内存中有:3456H,2345H,5643H,…(假设后面的7个数都大于5643H) 结果为: 2345H,3456H,564
编制一个程序,使其实现如下功能:将内存中连续存放的10个十六位二进制无符号数按照从小到大的顺序排列。 例如: 内存中有:3456H,2345H,5643H,…(假设后面的7个数都大于5643H) 结果为: 2345H,3456H,564
admin
2010-09-01
67
问题
编制一个程序,使其实现如下功能:将内存中连续存放的10个十六位二进制无符号数按照从小到大的顺序排列。
例如:
内存中有:3456H,2345H,5643H,…(假设后面的7个数都大于5643H)
结果为: 2345H,3456H,5643H,…(后面跟7个字,按照从小到大的顺序排列)。
部分程序已经给出,其中原始数据由过程LOAD从文件INPUT.DAT中读入以SOURCE开始的内存单元中。运算结果要求从RESULT开始的内存单元存放,由过程SAVE保存到文件OUTPUTDAT中。
请填空BEGIN和END之间已给出的源程序使其完整,空白已经用横线标出,每行空白一般只需要一条指令,但采用功能相当的多条指令亦可,考生也可以删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。
对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
[试题程序]
EXTRN LOAD:FAR,SAVE:FAR
N EOU 10
SSEG SEGMENT STACK
DB 256 DUP (?)
SSEG ENDS
DSEG SEGMENT
SOURCE DW N DUP (?)
RESULT DW N DUP (0)
NAME0 DB ’INPUT.DAT’,0
NAME1 DB ’OUTPUT.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*2
CALL LOAD
; ******** BEGIN ********
MOV SI,OFFSET SOURCE
MOV DI, (1)
MOV CX,N
AGAIN0: MOV AX,[SI]
MOV [DI],AX
ADD SI,2
ADD DI,2
LOOP AGAIN0
CLD
MOV BX,N-1
AGAIN1: MOV SI,OFFSET RESULT
MOV CX,BX
AGAIN2: LODSW
CMP [SI], (2)
JAE NEXT
(3)
MOV [SI-2],AX
NEXT: LOOP (4)
DEC BX
JNZ (5)
; ******** END ********
LEA DX,RESULT
LEA SI,NAME1
MOV CX,N*2
CALL SAVE
RET
START ENDP
CSEG ENDS
END START
选项
答案
(1)OFFSET RESULT (2)AX (3)XCHG [SI],AX (4)AGAIN2 (5)AGAIN1
解析
从整个程序可以看出,程序所采用的方法是先将从SOURCE开始的内存单元的内容送到从RESULT开始的内存单元中,然后对从RESULT内存单元开始的数据进行排序。程序第一个循环的作用是完成数据传送,由此可以判断传送到DI中的应该是RESm。丁存储单元的偏移地址,即第一个空白处应填OFFSET RESULT。当数据全部传送到从RESULT开始的单元以后,便对其进行从小到大的排序。在排序的过程中,使用的是取字符串指令LODSW,所以比较的数应该在AX寄存器中,即第二个空应填AX。接下来的程序实现的是比较功能,程序采用的是逐项比较的算法,当后面的元素大于前面的元素时,直接进行下一次循环,而当后面的元素较小的话,就需要和前面的元素进行交换,因此需要填写的指令是XCHG[SI],AX。当程序执行完一次排序以后,最大的数已经在最后面,因此下一次只需要对前N-1个数进行比较,并且循环应该从第一个数据开始,所以后两个空应该分别填AGAIN2和AGAIN1。
转载请注明原文地址:https://kaotiyun.com/show/eTgZ777K
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
下列哪项是指软件在所给的环境条件下和给定的时间内能完成所要求功能的性质?
J.Martin指出,系统开发所建立的企业模型应具有若干特性,以下哪个不在其要求之列?
下面列出的数据管理技术发展的三个阶段中,哪个阶段没有专门的软件对数据进行管理?Ⅰ.人工管理Ⅱ.文件管理Ⅲ.数据库
面向数据流的设计方法,可以把数据流程图映射变换成软件【】图。
BSP是由IBM公司研制的,它主要是用于指导企业信息系统的
PC机的运算速度是指它每秒钟所能执行的指令数目。下面()是提高运算速度的有效措施。Ⅰ增加CPU中寄存器的数目Ⅱ提高CPU的主频Ⅲ增加高速缓存(CACHE)的容量Ⅳ扩充PC机磁盘存储器的容量
下列是关于信息系统开发策略的假设。Ⅰ.所有的需求能被预先定义Ⅱ.有快速的系统建造工具Ⅲ.项目参加者之间通常能够清晰地进行通信Ⅳ.需要实际的、可供用户参与的系统模型Ⅴ.大量的反复是不可避免的,应该加以鼓励以上假设中,属于原型化方法
假设有如下两个关系R和S:则以下查询语句:SELECTA,B,C,D,EFROMR,SWHERER.A=S.A实现的是R和S的什么运算?
PC机的串行通信接口(COM1、COM2)采用异步通信。异步通信的一帧信息包括起始位、数据位、奇偶校验位(可选)和【】。
在Windows9x/2000/XP中,同一个文件存储在软盘上或硬盘上,它所占用的磁盘空间大小通常是上【】的。
随机试题
4岁小儿,水痘后干咳、食欲缺乏、低热2周,今来门诊就诊。该患儿胸片示“肺门淋巴结肿大”,PPD试验硬结10mm×15mm。拟采用短疗程法,则总疗程为
非特异投射系统()
《素问.水热穴论》中所称的“胃之关”为
A、沸腾制粒法B、滴制法C、研和法D、流延法E、热融法制备软膏可采用()。
采购成本的控制主要包括()。
单位从其银行结算账户支付给个人银行结算账户的款项,每笔超过()万元的,应向其开户银行提供付款依据。
某学生在操场上发现一只蝙蝠.他问老师是否可以将其带入教室给同学展示。对于这一请求,教师最合理的回应方式是()。
当地一家报社未经允许私自刊登了小丽的一篇文章,这侵犯了小丽()的权利。
2011年末,湖南省中小企业共计18.49万家,较上年增长11.0%,占全省企业总数的99.8%。2011年全省中小企业实现增加值达8154.32亿元,较上年增长16.1%;中小企业增加值占GDP的比重为41.5%,比上年提高0.8个百分点。中小企业拉动G
【】的目的是检查模块是否正确的组合在一起,是否能够实现规格说明文档对产品功能的要求。
最新回复
(
0
)