首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
编制一个程序,实现如下功能:将内存中连续存放的10个八位二进制无符号数按照从大到小的顺序排列。 例如: 内存中有:3EH,0FEH,5DH……(假设后面的7个数都小于3EH) 结果为: 0FEH,5DH,3EH……(后面跟7个字,按照从
编制一个程序,实现如下功能:将内存中连续存放的10个八位二进制无符号数按照从大到小的顺序排列。 例如: 内存中有:3EH,0FEH,5DH……(假设后面的7个数都小于3EH) 结果为: 0FEH,5DH,3EH……(后面跟7个字,按照从
admin
2010-12-14
59
问题
编制一个程序,实现如下功能:将内存中连续存放的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的PC机,通过对某个文件的修改,可以在开机后将机器直接启动到DOS状态,该文件是
使用PentiualCPU的PC机中,DIMM内存条的数据宽度为
假设DAT为字节变量,下列三条指令中功能相同的是哪几条?Ⅰ.MOVAL,DAT[2]Ⅱ.MOVAL,DAT+2Ⅲ.MOVAL,2[DAT]
扫描仪与计算机的接口一般有三种,其中有一种是并行传输接口,它必须配有一块接口卡,通过该接口卡可以连接包括扫描仪在内的7~15个高速设备,其传输速度快,性能高,一般在专业应用场合使用。这种接口为【】接口。
为了提高DRAM的读写速度,通常采用一些特殊的技术开发多种不同类型的DRAM。下面四种DRAM中速度最快的是
微处理器对I/O口的编址方式有两种。一种是将I/O口地址和存储器地址统一编址,把I/O口地址看作存储器地址的一部分,用存储器访问指令实现输入输出;另一种是将I/O口地址和存储器地址分别独立编址,采用专门的【】指令对I/O口进行操作。
下面是关于PCI总线的叙述,其中错误的是:
PC机中DRAM内存条的类型有多种,若按存取速度从高到低的顺序排列,正确的是:
Internet使用TCP/IP协议实现了全球范围的计算机网络的互连,连接在Internet上的每一台主机都有一个IP地址。下面哪一个不能作为IP地址?
通常采用MB(兆字节)作为PC机主存容量的计量单位,这里1MB等于多少字节?
随机试题
Annuallymyfamilyhasaget-togetherinastateparkinthemountainsofNorthCarolina.Atoneoftheget-togethers,theweath
尿毒症患者贫血的主要原因是
患者胸闷,心烦不寐,泛恶暖气,头重目眩,口苦,舌红苔黄腻,脉滑数。证属()
不适用于海事赔偿责任限制制度的请求的是( )。
买断式回购可选择的结算方式包括()。Ⅰ.见款付券Ⅱ.券款对付Ⅲ.纯券过户Ⅳ.见券付款
关于个人征信系统的网络流程管理,下列说法错误的是()。
多瑙河是欧洲第二长河,发源于德国西南部,自西向东注入黑海,流经10个国家,是世界上干流流经国家最多的河流,下列国家没有多瑙河经过的是()。
某校大力美化了校园环境,注重校园文化建设,确定了校风校训、班风班训等。这种现象说明该校重视了()。
公民基本道德规范的主要内容包括()
GPSTheGlobalPositioningSystemisaspace-basedtriangulationsystemusingsatellitesandcomputerstomeasurepositions
最新回复
(
0
)