首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编制程序,其功能是:在递增的有序字节数组中插入一个正整数,并按指定的数组个数存入内存区中。假设数组元素均为正数。 例如,将02H插入下面的数组中: 01H,03H,04H,05H… 结果为 01H,02H,03H,04H,05H…
请编制程序,其功能是:在递增的有序字节数组中插入一个正整数,并按指定的数组个数存入内存区中。假设数组元素均为正数。 例如,将02H插入下面的数组中: 01H,03H,04H,05H… 结果为 01H,02H,03H,04H,05H…
admin
2010-12-14
105
问题
请编制程序,其功能是:在递增的有序字节数组中插入一个正整数,并按指定的数组个数存入内存区中。假设数组元素均为正数。
例如,将02H插入下面的数组中:
01H,03H,04H,05H…
结果为 01H,02H,03H,04H,05H…
部分程序已经给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中,转换结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。
请填空BEGIN和END之间已经给出的一段源程序使其完整,需填空处已经用横线标出,每个空白一般只需要填一条指令或指令的一部分(指令助记符或操作数),考生也可以填入功能相当的多条指令,或删去BEGIN和END之间原有的代码并自行编程来完成所要求的功能。对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
试题程序:
选项
答案
(1)AL (2)DL (3)SI (4)[BX+SI+1] (5)REP
解析
此程序要实现的功能是:在递增的有序字节数组中插入一个正整数,并按指定的数组个数存入内存区中。
此程序是用直接插入法将关键字插入到一个数组中,插入前数组的长度为9,插入关键字后,数组长度为10。关键要理解:是将关键字和数组的最后一个数开始比较,然后再与倒数第二个、倒数第三个……逐个比较,直到找到了合适的插入位置为止。
程序的数据段中定义了五个字节型变量:变量MIN、原始数据区SOURCE、结果数据区 RESULT、原始数据文件名NAME0、结果数据文件名NAME1。数据段下面是堆栈段,定义了一个256个字节的堆栈区。最后是代码段,告诉汇编程序,代码段、数据段和堆栈段分别属于段寄存器CS、DS、SS。假设要插入的数是X即2。
先将原始数据的偏移地址装入到BX中,SI赋值为N-2即日,将偏移地址BX加上SI,则得到偏移地址BX为8,接着将SI赋值为0,将要插入的数X送AX。
LP段,先将AL即X与数组的最后一个数(第9个数)即BX+SI中的内容做比较,若AL大于等于第9个数,则转向1NS处执行;否则,AL小于最后第9个数,则将第9个数即BX+SI中的内容赋给DL,再将DL存入到数组的最后一个位置即第10个数存放的地址中,它的偏移地址为BX+SI+I,这样数组中原第9个数就存入到了数组的第十个位置了,成为该数组的最后一个数。然后,将SI减1,无条件转向 LP处执行,继续将AL与原数组的倒数第二个数即偏移地址为BX+SI-1内容中的数相比较,比较后,再做不同的处理。从上面的分析来看,第(1)空填写"AL",第(2)空填写"DL",第(3)空填写"SI"。INS段,是当AL大于等于第9个数时,则将AL即要插入的数X存入到数组的第十个位置上。如果 AL不是与第9个数比较,而是与中间的某一个数如第六个数相比,AL大于第六个数,则将要插入的数 AL存放到数组的第七个位置上。其他情况依次类推。所以第(4)空填写"[BX+SI+1]"。接着,用CLD指令将方向标志DF清0,在存储数组中的数据时,实现地址指针自动增量。将原始数据的偏移地址装入到SI中,结果数据存放的偏移地址装入到DI中。CX赋值为N,用于控制存储数组中数据的次数。再用 REP MOVSB指令将SI指定的存储单元中的内容即数组中的10个数据装入到DI指定的内存中。一共操作10次,就将10个数据都存储完毕了。所以第(5)空填写"REP"。
转载请注明原文地址:https://kaotiyun.com/show/JdgZ777K
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
操作系统在实现虚拟存储器时,可用的内存页面替换算法有多种,Windows98所采用的算法是
在Windows98环境下,如果有1个DOS应用程序、2个Win16应用程序和3个Win32应用程序正在运行,则系统当前有几个虚拟机在工作?
PC机中CPU执行MOV指令从存储器读取数据时,数据搜索的顺序是
若汇编语言源程序中段的定位类型设定为PARA,则该程序目标代码在内存中的段起始地址应满足什么条件?
假设(AL)=0FFH,依次执行ADDAL,12和ANDAL,0FH指令后,标志位ZF和SF的状态分别为
在为PC机配置硬盘时,应该特别注意它的技术指标。下面是关于目前PC机主流硬盘技术指标的叙述:Ⅰ.容量大多为数十GB以上Ⅱ.转速大多为5400r/m、7200r/m或10000r/mⅢ.平均访问时间大多在50ms~100ms之间Ⅳ.外部数据传
Windows98通过注册表提供的信息来控制系统的运行。在下列有关Windows98注册表的叙述中,哪个是错误的?
Pentium微处理器在实地址模式下,借助于HIMEM.SYS程序可以获得额外的高端内存空间,其物理地址范围是:
集线器(HUB)是局域网中除了网卡以外必不可少的设备,下列关于集线器(HUB)功能的叙述中,不正确的是( )。
随机试题
《素问.上古天真论》所说“丈失六八”的生理表现是
下列关于条件反射的描述,正确的是
质子泵抑制剂用于上消化道出血的主要机制是
_______和_______均为原发性肝癌发生的促发因素。
下列各穴中,属于胃经的穴位
保险公司资金运动的特殊性包括()
基金会计期间划分一般以月为单位。()
下列说法错误的是()。
关于错误观念,正确的说法是()。
任何哲学都是()。
最新回复
(
0
)