首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编制一个程序,实现如下功能:将内存中连续存放的10个八位二进制无符号数按照从大到小的顺序排列。 例如: 内存中有:3EH,0FEH,5DH……(假设后面的7个数都小于3EH) 结果为: 0FEH,5DH,3EH……(后面跟7个字,按照从
编制一个程序,实现如下功能:将内存中连续存放的10个八位二进制无符号数按照从大到小的顺序排列。 例如: 内存中有:3EH,0FEH,5DH……(假设后面的7个数都小于3EH) 结果为: 0FEH,5DH,3EH……(后面跟7个字,按照从
admin
2010-12-14
100
问题
编制一个程序,实现如下功能:将内存中连续存放的10个八位二进制无符号数按照从大到小的顺序排列。
例如:
内存中有:3EH,0FEH,5DH……(假设后面的7个数都小于3EH)
结果为: 0FEH,5DH,3EH……(后面跟7个字,按照从大到小的顺序排列)。
部分程序已经给出,其中原始数据由过程LOAD从文件INPUT.DAT中读入以SOURCE开始的内存单元中。运算结果要求从RESULT开始的内存单元存放,由过程SAVE保存到文件OUTPUT.DAT中。
请填空BEGIN和END之间已给出的源程序使其完整,空白已经用横线标出,每行空白一般只需要一条指令,但采用功能相当的多条指令也行,考生也可以删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。
对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
【试题程序】
EXTRN LOAD:FAR,SAVE:FAR
N EQU 10
SSEG SEGMENT STACK
DB 256 DUP (?)
SSEG ENDS
DSEG SEGMENT
SOURCE DB N DUP (?)
RESULT DB 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
CALL LOAD
;******** BEGIN ********
MOV SI,OFFSET SOURCE
MOV DI,OFFSET RESULT
MOV CX,N
AGAIN0: MOV AX, [SI]
MOV [DI],AX
ADD SI, (1)
(2)
LOOP AGAIN0
CLD
MOV BX,N-1
AGAIN1: MOV SI,OFFSET RESULT
MOV CX,BX
AGAIN2: LODSB
CMP [SI],AX
(3)
XCHG [SI],AX
(4)
NEXT: LOOP AGAIN2
(5)
JNZ AGAIN1
;******** END ********
LEA DX,RESULT
LEA SI,NAME1
MOV CX,N
CALL SAVE
RET
START ENDP
CSEG ENDS
END START
选项
答案
(1)1 (2)ADD DI,1 (3)JBE NEXT (4)MOV[SI-1],AX (5)DEC BX
解析
本题是一道降序排列题,程序首先是将以SOURCE开始的内存单元中的数据传送到RESULT中,利用循环AGAIN0实现。在循环中,需要不断地改变指针,但由于题中的变量为字节型,因此指针的改变为1,即第一个空白处应填1。指向SOURCE的指针增加1的时候,指向RESULT的指针也应该增加1,所以第二个空白处应填ADD DI,1。
接下来的程序便是对数据进行从大到小排列,CLD使指针向着增加的方向移动。在对两个数据进行比较后,因为要求从大到小排列,所以小的数据要往后移,若后面的数据较小,则不需要交换,直接进行下一次比较,所以第三个空白处应填JBE NEXT。若后面的数据大,则在进行数据交换以后需要将大的数据装入前面的存储单元,因此第四个空白处应填MOV[SI-1],AX。每一轮比较后,参加比较的数据的较小者都被放到了最后,这样只需要N-1轮比较就可以得到正确的排序。排序轮次的控制由BX寄存器来实现,因此最后一个空白处应填DEC BX。
转载请注明原文地址:https://kaotiyun.com/show/1dgZ777K
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
视频卡的种类较多,在下列有关各种视频卡的功能说明中,错误的是:
在Windows98环境下,Win32应用程序的4GB的地址空间可以划分为四个部分。其中,私有地址空间范围是
在Windows98环境下,如果有1个DOS应用程序、2个Win16应用程序和3个Win32应用程序正在运行,则系统当前有几个虚拟机在工作?
Internet(互联网)是一个庞大的计算机网络,每一台入网的计算机必须有一个唯一的标识,以便相互通信,该标识就是常说的【】。
如何对存储器进行有效的管理,不仅直接影响到存储器的利用率,而且还对系统的性能有重大影响。下面有关Windows98存储管理的叙述中,错误的是
下面是关于PC机中USB和IEEE-1394的叙述,其中正确的是
数字摄像机所拍摄的数字视频及其伴音数据量很大,为了将音视频数据输入计算机,一般要求它与计算机的接口能达到每秒百兆位以上的数据传输率,所以目前数字摄像机大多采用【】接口。
在下面PC机使用的外设接口中,哪一种可用于将键盘、鼠标、数码相机、扫描仪和外接硬盘与PC机相连?
下面是有关Windows98的文件管理功能的一些叙述,其中哪个是正确的?
在Windows98环境下,用户可以通过“控制面板”中的“添加/删除程序”来创建启动盘(软盘)。在Windows98默认安装的情况下,启动盘上的文件主要来源于c:\windows文件夹下的哪个文件夹?
随机试题
醋制能降低毒性的药物是()(2004年第127题)
【背景资料】某写字楼工程,地下1层,地上10层。当主体结构已基本完成时,施工企业根据工程实际情况,调整了装修施工组织设计文件,编制了装饰工程施工进度网络计划如下图所示,经总监理工程师审核批准后组织实施。在工程过程中,发生了以下事件:
由膳食供给的蛋白质,只有其所含必需氨基酸的比例与人体蛋白质必需氨基酸的比例相一致,才能被充分利用。()
女性,56岁,发现右乳腺肿物近一年,逐渐长大,初始疑为良性肿瘤,未给予治疗。现肿物直径约为6cm,界限不清,较硬,表面有破溃,似与胸壁有粘连,溃疡周有结节状增生隆起,查右腋窝淋巴结肿大。此肿物可能是
患者,男,70岁。今日胸痛发作频繁。2小时前胸痛再次发作,含化硝酸甘油不能缓解。检查:血压90/60mmHg,心律不整。心电图Ⅱ、Ⅲ、aVF导联ST段抬高呈弓背向上的单向曲线。应首先考虑的是()
什么是注册计量师制度?注册计量师有哪些权利和义务?
袋中有a白b黑共a+b只球,现从中随机、不放回地一只一只地取球,直至袋中所剩之球同色为止,求袋中所剩之球全为白球的概率.
Europeslowlyrecovered,andtherestoftheworldmadeencouragingprogress.
Itmakesnodifferencetome_______Mr.Smithwillcomeornot.
Sincewearesocialbeings,thequalityofourlivesdependsinlargemeasureonourinterpersonal(人与人之间的)relationships.Onestr
最新回复
(
0
)