首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编制程序,将内存中连续存放着的10个无符号16位二进制数,采用近似计算法求此10个数的近似平方根。方法为:令某个数X依次减去1,3,5,7,9……等奇数,一直减到差值刚刚小于等于0为止。计算出所做的减法的次数Y,即为该数的近似平方根。把得到结果并依次存放
请编制程序,将内存中连续存放着的10个无符号16位二进制数,采用近似计算法求此10个数的近似平方根。方法为:令某个数X依次减去1,3,5,7,9……等奇数,一直减到差值刚刚小于等于0为止。计算出所做的减法的次数Y,即为该数的近似平方根。把得到结果并依次存放
admin
2009-02-15
58
问题
请编制程序,将内存中连续存放着的10个无符号16位二进制数,采用近似计算法求此10个数的近似平方根。方法为:令某个数X依次减去1,3,5,7,9……等奇数,一直减到差值刚刚小于等于0为止。计算出所做的减法的次数Y,即为该数的近似平方根。把得到结果并依次存放到内存当中。
例如:内存中:0010H,0100H,0200H……
近似方根:0004H,0010H,0016H……
部分程序已经在PROG1中给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入,存放在SOURCE开始的内存单元中,转换结果存放在RESULT开始的内存单元中,并由过程SAVE保存到文件OUTPUT1.DAT文件中。
对BEGIN和END之间已经给出的源程序填空,使其完整,填空处已经用横线标出,每个空白一般只需填一条指令或指令的一部分;考生也可填入功能相当的多条指令,或删去 BEGIN和END之间原有的代码自行编制程序完成相应的要求。
对程序必须进行汇编并与IO.OBJ连接产生可执行文件,最终运行程序产生结果(无结果和结果不正确均不得分)。
部分源程序如下:
EXTRN LOAD:FAR,SAVE:FAR
N EQU 10
STACK SEGMENT
DB 128 DUP(?)
STACK ENDS
DATA SEGMENT
SOURCE DW N DUP(?)
RESULT DW N DUP(0)
NAMED DB ’INPUT1. DAT’,
NAME1 DB ’OUTPUT1. DAT’,
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS : DATA,SS : STACK
START PROC FAR
PUSH DS
XOR AX, AX
PUSH AX
MOV AX, DATA
MOV DS; AX
LEA DX, SOURCE
LEA SI, NAMFO
MOV CX, N * 2
CALL LOAD
**********BEGIN**************
LEA DI, RESULT
LEA SI, SOURCE
MOV CX, N
LOOP0: MOV AX, [SI]
MOV BX, 0
LOOP1: (1)
SUB AX, BX
(2) , STORE0
(3)
IMP LOOP1
STOREO: INC BX
(4)
MOV [DI], BX
INC DI
(5)
INC SI
(6) ,
LOOP LOOP0
***************END*************
LEA DX, RESULT
LEA SI, NAME1
MOV CX, N * 2
CALL SAVE
RET
START ENDP
CODE ENDS
END START
相关知识:
●循环程序设计
利用重复控制指令可以实现重复操作,能简化程序、节约存储空间。循环程序分为三部分:初始化部分为循环做准备;循环控制部分判断循环条件是否满足,是否继续循环操作;循环体部分完成要循环操作的具体工作。对于复杂问题,单重循环程序往往不能满足要求,循环中常常还需要有其他循环程序。值得注意的是内层循环和外层循环之间应有各自的控制条件,当从外层循环进入到内层循环时,内层循环的初始条件应该重新设置。
(1)五条件循环指令
格式:LOOP DST
该指令的功能是,程序执行到此处,CX的内容减1,若CX的内容不为0,则转到目标地址处继续执行指令,否则执行该指令的下一条指令。
(2)条件循环指令
(I)格式:LOOPZ/LOOPE DST
该指令执行后,如果零标志位为1,且CX内容减1后不等于0,则转移到目标地址处继续执行指令,否则执行循环指令后的一条指令,即零标志位为0或CX内容为0时退出循环。
(ii)格式:LOOPNZ/LOOPNE DST
该指令执行时,CX内容减1,然后根据零标志位和CX内容决定是否循环。若零标志位为1,或CX内容为0时退出循环,否则零标志位等0且CX内容不等于0,则转移到转移指令的目标地址处继续执行。
编程思路:
第一步:分析程序要求的功能。
本程序需要完成以下功能:
(1)从数据文件INPUT1.DAT中读取10个16位无符号整数存放在SOURCE开始的内存单元中。
(2)将SOURCE开始的10个字单元中的无符号整数,利用减奇数的方法求近似方根,并将结果存放在RESULT开始的内存单元中。
(3)将方根结果存放在OUTPUT1.DAT中。
第二步:用相应的汇编程序来实现其功能。
(1)数据的读取和存入文件的实现,题目中已经给出。
(2)对于一个数的方根近似求解,题目中叙述了具体的实现方法,VCB依次减1,3,5……直至差小于等于0,求差次数即为方根。
通过阅读题目中的汇编源代码,我们可以看出,将内存中的数读入AX,然后循环减 BX中的内容。这样我们可判断出减数1,3,5……是存放在BX中的,BX的初始值为1,每执行完一次减操作,BX的内容就应该加2。我们始终没有发现哪一个寄存器是用来计数进行减操作次数的,可实际上BX的内容与减操作的次数是有关的,减操作的次数为((BX)+1)/2。观察出这些特征后,我们就可容易填出空格处的答案了。
选项
答案
(1) INC BX (2) JNA (3) INC BX (4) SUR BX, 1 (5) INC DI (6) INC SI
解析
转载请注明原文地址:https://kaotiyun.com/show/wwrZ777K
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
计算机只能直接识别和执行机器语言,因此,使用各种高级程序设计语言编写的源程序代码必须要经由【】翻译成机器语言表示的目标程序。
以下关于BSP目标的描述中,错误的是
加密和解密算法的操作都是在一组密钥控制下完成的,它们分别被称为______。
设有关系R、S和T如下。关系T是由关系R和S经过哪种操作得到的?
由数据类的特点将子系统进行分类,下面哪种不属于子系统类
绝大多数数据库管理系统的总体结构都具有外模式、模式和内模式3级模式结构。描述数据库中全体数据的全局逻辑结构和特性的是()。
信息系统的开发应有专门的研制开发队伍。组成这支队伍的方式一般有下面四种,这四种方式中既有利于企业信息技术人员的培养,又有利于系统的运行维护的方式是
结构化方法工作阶段划分为提出任务、初步调查、可行性分析、详细调查、______、系统的物理设计、系统实施及系统的运行和维护。
完备的网络安全服务功能主要有:保密性、认证、数据完整性、防抵赖和______。
在单元测试过程中,可将单元从概念上划分为私有单元和公开单元。以下()是私有单元的特征。
随机试题
男孩,3岁。因“肌注后臀部血肿”收治入院。经各项检查证实为“血友病(甲),重型”。下列哪项检查作为该病的初筛试验最合适
患儿女,5岁。尿频、尿急、尿痛5天,体温39.5℃,左肾区有叩击痛,尿常规蛋白(++),白细胞满视野,红细胞5~10个/HP。首先应予何种处理
A公司本期确认的营业税金及附加为7万元,均用银行存款支付,增值税进项税额为30万元,增值税销项税额为50万元,已缴纳增值税30万元;当期所得税费用为45万元,应交所得税期末余额为15万元,期初余额为0万元。不考虑其他因素,则A公司本期“支付的各项税费”项目
配制重铬酸钾标准溶液时可直接配制而不用标定。
下列哪一项与乳腺硬癌无关
在仲裁裁决作出后,当事人有权向人民法院申请撤销仲裁裁决。人民法院在一定情况下,可以通知仲裁庭重新进行仲裁。关于重新仲裁说法正确的是:()
企业在作出因解除与职工的劳动关系给予的补偿的会计处理时,通常涉及的会计科目有()。
设函数f(x)连续,则f(1)=_______.
(2005年试题,一)当x→0时,a(x)=kx2与是等价无穷小,则k=__________.
在关系代数中,从两个关系的笛卡尔积中选取它们属性间满足一定条件的元组的操作,称为
最新回复
(
0
)