首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编制程序,其功能是:内存中连续存放着10个十六位二进制数。分别对每个数的高位字节和低位字节进行逻辑与运算及逻辑或运算。运算结果以字的形式按序连续存放(低位字节存入逻辑与运算的结果,高位字节存入逻辑或运算的结果)。 例如: 内存中有:AA55H
请编制程序,其功能是:内存中连续存放着10个十六位二进制数。分别对每个数的高位字节和低位字节进行逻辑与运算及逻辑或运算。运算结果以字的形式按序连续存放(低位字节存入逻辑与运算的结果,高位字节存入逻辑或运算的结果)。 例如: 内存中有:AA55H
admin
2009-02-15
58
问题
请编制程序,其功能是:内存中连续存放着10个十六位二进制数。分别对每个数的高位字节和低位字节进行逻辑与运算及逻辑或运算。运算结果以字的形式按序连续存放(低位字节存入逻辑与运算的结果,高位字节存入逻辑或运算的结果)。
例如:
内存中有:AA55H,55AAH,FFAAH
结果为: PP00H,FF00H,FFAAH
部分程序已给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从 RESULT开始存放, 由过程SAVE保存到文件OUTPUT1.DAT中。
请填空BEGIN和END之间已经给出的源程序使其完整,空白处已经用横线标出,每个空白一般只需一条指令,但采用功能相当的多条指令亦可,或删去BEGIN和END之间原有的代码并自行编程来完成所要求的功能。
对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
[试题程序]
EXTRN LOAD:FAR,SAVE:FAR
N EQU 3
STAC SEGMENT STACK
DB 128 DUP (?)
STAC ENDS
DATA SEGMENT
SOURCE DW N DUP(?)
RESULT DW N DUP(0)
NAME0 DB ’INPUT1.DAT’,0
NAME1 DB ’OUTPUT1.DAT’,0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA, SS:STAC
START PROC FAR
PUSH DS
XOR AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
LEA DX,SOURCE ;数据区起始地址
LEA SI,NANE0 ;原始数据文件名
MOV CX,N*2 ;字节数
CALL LOAD ;从’INPUT1.DAT’中读取数据
; ********* BEGIN **********
MOV DI,OFFSET RESULT
MOV CX,N
MOV BX,00
PRO: MOV AX, (1)
MOV DX,AX
AND (2) ,DH
(3) AH,AL
MOV (4) ,DL
ADD BX,2
(5)
ADD DI,2
(6)
JNZ PRO
; ******** END ********
LEA DX,RESULT ;结果数据区首址
LEA SI,NAME1 ;结果文件名
NOV CX,N*2 ;结果字节数
CALL SAVE ;保存结果到文件
RET
START ENDP
CODE ENDS
END START
选项
答案
(1)SOURCE[BX] (2)DL (3)OR(4)AL (5)MOV [DI],AX (6)DECCX
解析
该程序的功能是:将每个16位二进制数的高8位和低8位分别进行逻辑“与”运算和逻辑“或”运算,并将运算结果以字的形式按序连续存放,低字节存放逻辑“与”运算的结果,高字节存放逻辑“或”运算的结果。
程序的堆栈段定义了一个128字节的堆栈区。堆栈段下面是数据段。数据段中定义了两个字型变量:原始数据区SOURCE和结果数据区RESULT:两个字节型变量:原始数据文件名NAME0和结果数据文件名NAME1。数据段下面是代码段,在代码段的开始告诉汇编程序,代码段、数据段和堆栈段分别属于段寄存器CS、DS、SS。
在程序的开始部分,是对返回地址的保存和数据段寄存器的初始化,这是每一个汇编程序所必须具有的操作步骤。然后调用外部过程LOAD,从“INPUT1.DAT”中读取数据。准备工作完成以后,程序进入主体部分。
首先将结果数据偏移地址传送给DI,CX赋初值为N,原始数据偏移地址BX赋初值为0。在PRO段,将SOURCE[BX]中的内容送AX,所以第(1)空填写“SOURCE[BX]”。接着将AX中的数据送DX暂存,将DL和DH中的内容(即16位二进制数的高8位和低8位的值)进行逻辑“与”操作,结果存放于DL中,所以第(2)空填写“DL”。然后将AH和AL中的内容进行逻辑“或”操作,结果存放于AH中,第(3)空填写“OR”。将高8位和低8位逻辑“与”的结果(DL的内容)送AL,所以第(4)空填写“AL”。注意,此时AH中的内容为高8位和低8位逻辑“或”的结果。接着将地址指针BX加2,指向下一个16位二进制数。最后,将AX中的逻辑“或”和逻辑“与”的结果存入到字单元[DI]中,所以第(5)空填写“MOV [DI],AX”。
当处理完一个16位二进制数后,CX减1,若CX的内容不为0,则转向PRO段,继续处理下一个16位二进制数:若 CX内容为0,说明1016位二进制数已全部处理完。显然第(6)空应填写“DECCX”,用以实现循环计数。
转载请注明原文地址:https://kaotiyun.com/show/LMrZ777K
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
搞好信息系统开发的原动力是
操作系统是一组
以下关于BSP目标的描述Ⅰ.确定信息系统的优先顺序Ⅱ.基于企业组织机构采建设信息系统Ⅲ.提供数据处理资源的管理Ⅳ.增加信息系统高收效的实施Ⅴ.改善信息系统管理部门与用户间关系其中,正确的有哪个(些)?
今对以上两个关系做如下操作:Ⅰ.DELETEFROM雇员WHERE雇员号=’010’Ⅱ.DELETEFROM部门WHERE部门名=’业务部’Ⅲ.DELETEFROM部门WHERE部门名=’服务部’Ⅳ.INSERTINTO
分布式数据有多种形式,在下列形式中哪种形式是外围计算机存储的数据?()
办公信息系统是计算机和相关办公设备在什么环境下的一类面向办公应用的计算机信息系统?
SQL语言支持数据库的外模式、模式和内模式结构。外模式对应于视图和部分基本表,模式对应于【】,内模式对应于存储文件。
管理信息系统(MIS),办公自动化系统(OAS)、决策支持系统(DSS)的驱动模式不尽相同,而DSS的驱动模式是()。
学生、课程和成绩三个关系:学生(学号,姓名,性别,班级),课程(课程名称,学时,性质),成绩(课程名称,学号,分数),若打印学生成绩单,包含学号、姓名、课程名称、分数,应该对这些关系进行()操作。
为了提高程序的输入输出效率,应该遵循______。Ⅰ.与外存有关的输入输出操作,应成块的传送数据Ⅱ.所有的输入输出操作应有缓存,以避免过于频繁的信息交换Ⅲ.对于外存,应采取简单有效的存取方法Ⅳ.与终端和行式打印机相关
随机试题
下列哪项不是急性牙髓炎的表现
某患者局麻下拔除下6残根,拔牙过程顺利。但5天后出现发热,右咽侧肿痛明显,后出现张口受限,白细胞计数11.0×109/L。最可能的原因是
胎儿与母体间进行物质交换的重要器官是()
项目发起人制定的总目标和其他利益相关方制定的子目标形成()关系。
(根据下列经济业务,编制相应的会计分录。)(1)购入原材料一批,增值税发票列示:价款10000元,增值税1700元,款项用银行存款支付,材料尚未到达。(2)用现金支付上述材料的运杂费3000元。(3)上述材料已到达,验收入库,按其实
根据“了解客户”准则的要求,银行业从业人员应当了解客户的()。
市区某电信部门拥有房产原值1850万元(扣除率为30%),9月份将850万元的房屋出租,每月租金3.2万元,当月收取了半年的租金。9月提供电信服务取得收入140万元,其中包括随同出售的通信器材36.5万元。从事通信线路工程取得收入350万元,其中包括电缆、
给定资料1.“先天下之忧而忧,后天下之乐而乐”,写下这句千古名言的范仲淹是北宋著名的文学家,更是一代名臣。他出身贫苦,入仕从政后,十分关心百姓疾苦。有一年,淮南等地蝗灾、旱灾蔓延,灾情严重。范仲淹请求朝廷巡察处理,朝廷却置之不理。他十分气愤,冒着
编辑加工。(安徽大学2004年研)下列文字,除标明作者外,均见《人民日报》。如认为需要,请予以再编辑加工(修改处请用规范校对符号)。或指出问题所在。(1)曹操是一个很有本事的人,至少是一个英雄。(见鲁迅《魏晋风度和药和酒的关系》)(2)克隆出6头母牛
Inthe1960s,medicalresearchersThomasHolmesandRichardRahedevelopedachecklistofstressfulevents.Theyappreciatedthe
最新回复
(
0
)