首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请编制程序,其功能是;内存中共有30个字节型数据,找出其中的两个ASCII字符串并进行校验。欲寻找的ASCII字符串由13个字符组成:#(23H),7个ASCII字符,*(2AH),2个ASCII字符,回车符(0DH),换行符(0AH)。 校验方法为
请编制程序,其功能是;内存中共有30个字节型数据,找出其中的两个ASCII字符串并进行校验。欲寻找的ASCII字符串由13个字符组成:#(23H),7个ASCII字符,*(2AH),2个ASCII字符,回车符(0DH),换行符(0AH)。 校验方法为
admin
2010-12-14
60
问题
请编制程序,其功能是;内存中共有30个字节型数据,找出其中的两个ASCII字符串并进行校验。欲寻找的ASCII字符串由13个字符组成:#(23H),7个ASCII字符,*(2AH),2个ASCII字符,回车符(0DH),换行符(0AH)。
校验方法为:对字符#及字符,之间的7个ASCII字符进行异或操作,若异或操作结果的ASCII字符表示(异或操作结果高4位的ASCII字符表示在前,低4位的ASCII字符表示在后)与原字符串中字符,之后的两个ASCII字符相同,则将原字符串原样保存:反之,则将原字符串中的所有字符(共13个)均用字符!(21H)代替。
例如:
内存中有:33H,35H,23H(’#’,第一个字符串开始),46H,41H,30H,2EH,34H,3DH,31H,2AH(’#’),32H,
31H,ODH,OAH,46H,23H(’#’,第二个字符串开始),46H,41H,30H,2EH,34H,46H,41H,
30H,46H,41H,30H,2EH,34H,3DH,30H,2AH(’*’),32H,31H,ODH,OAH,55H
结果为:23H,46H,41H,30H,2EH,34H,3DH,31H,2AH(’*’),32H,31H(校验正确,该字符串原样保持),
ODH,OAH,21H,21H,21H,21H,21H,21H,21H,21H,21H,21H,21H,21H,21H(校验错,整个字符串用字符“!”代替)
部分程序已给出,其中原始数据由过程LOAD从文件INPUT.DAT中读入SOURCE开始的内存单元中。运算结果要求从 RESULT开始存放,由过程SAVE保存到文件OUTPUT.DAT中。
请填空BEGIN和END之间已给出的源程序使其完整,空白已用横线标出,每个空白一般只需一条指令,但采用功能相当的多条指令亦可,或删除BEGIN和END之间原有的代码并自行编程来完成所要求的功能。
对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
【试题程序】
EXTRN LOAD:FAR, SAVE:FAR
N EQU 26
STAC SEGMENT STACK
DB 128 DUP (?)
STAC ENDS
DATA SEGMENT
SOURCE DB N+4 DUP(?)
RESULT DB N DUP(0)
HH DB 2 DUP(0)
NAME0 DB ’INPUT.DAT’,0
NAME1 DB ’OUTPUT.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,NAME0 ; 原始数据文件名
MOV CX, N+4 ; 字节数
CALL LOAD ; 从’INPUT. DAT’ 中读取数据
;******** BEGIN ********
MOV SI,0
MOV DI,0
MOV BX,2 ; 两个ASCII 字符串
REPEAT: MOV AH,0
SEARCH: MOV AL,SOURCE[SI]
INC SI
CMP AL,’#’
(1) SEARCH
MOV RESULT[DI],AL
INC DI
SEARCH1: MOV AL,SOURCE[SI]
INC SI
CMP AL, (2)
JE ASCII
MOV RESULT[DI],AL
INC DI
XOR AH,AL
JMP (3)
ASCII: MOV RESULT[DI],AL
INC DI
PUSH DI
MOV DI,0
MOV DH,2
MOV DL,AH ; 异或结果暂存在DL
MOV CL, 4 ; 先将结果高4位转换成ASDCII字符
SHR AH, CL ; 本行开始的4行语句将一个十六进制数转换
; 为ASCII码
CHANGE: CMP AH,10
JL ADD_0
ADD AH, ’A’-’0’-10
ADD_O: ADD AH, ’0’
MOV HH[DI],AH
INC DI
DEC DH
JZ EXT
MOV AH, DL ; 再将异或结果低4位转换成ASDCII字符
AND AH, 0FH
JMP CHANGE
EXT: POP DI
MOV AL,SOURCE[SI]
MOV RESULT[DI],AL
INC SI
INC DI
MOV AH,SOURCE[SI]
MOV RESULT[DI],AH
INC SI
INC DI
MOV DL,HH
MOV DH,HH+1
CMP AX,DX
(4) ERR
MOV AL, 0DH ; 校验正确
MOV RESULT[DI],AL
INC DI
MOV AL,0AH
MOV RESULT[DI],AL
INC DI
JMP LP
ERR: SUB DI, 11 ;校验正确
MOV AL,’!’
MOV CX, (5)
COVER: MOV RESULT[DI],AL
INC DI
LOOP COVER
LP: (6)
JZ EXIT
JMP REPEAT
EXIT: NOP
;******** END ********
LEA DX, RE****SULT ; 结果数据区首址
LEA SI, NAME1 ; 结果文件名
MOV CX, N ;结果字节数
CALL SAVE ; 保存结果到文件
RET
START ENDP
CODE ENDS
END START
选项
答案
(1)JNZ (2)’*’ (3)SEARCH1 (4)JNZ (5)13 (6)DEC BX
解析
本题是一道字符转换题,解决此类题型的关键是确定转换范围和条件。其中转换范围在题目中已给出为30个字符,同时还给出了需要查找的两个字符串。
接下来,首先计算指定范围内字符串中字符的异或操作结果,并将结果转换为对应的十六进制ASCII码字符,然后再与字符串结束符后面的两个字符进行比较,若相同,则直接将原来的字符串存入结果数据区,反之则将字符串中全部的字符替换为一个固定字符,存入结果数据区中。
此题目中涉及到的逻辑判断比较多,如果有一个地方出现错误,就很容易造成整个题目计算结果的错误,因此需要非常的认真和仔细。
转载请注明原文地址:https://kaotiyun.com/show/WdgZ777K
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
使用PentiualCPU的PC机中,DIMM内存条的数据宽度为
声卡是PC机的一种重要的组成部件。下面有关声卡的叙述中,错误的是
Windows98提供了多种网络协议软件,以支持不同的网络应用。将安装Windows98的PC机作为NetWare网络的客户机时,必须安装下列哪种协议?
在为PC机配置硬盘时,应该特别注意它的技术指标。下面是关于目前PC机主流硬盘技术指标的叙述:Ⅰ.容量大多为数十GB以上Ⅱ.转速大多为5400r/m、7200r/m或10000r/mⅢ.平均访问时间大多在50ms~100ms之间Ⅳ.外部数据传
下面哪一个选项中的程序段可以将AX寄存器的高4位移至BX的低4位?
PC机中,DRAM内存条的速度与类型有关,若按存取速度从低到高的顺序排列,正确的是
硬盘的平均等待时间是指数据所在扇区转到磁头下方所需的平均时间,它与盘片的转速有关。目前主流硬盘的转速多为5400rpm、7200rpm、10000rpm。转速为7200rpm的硬盘,其平均等待时间约为
硬盘是PC机中主要的辅助存储器,以下是有关PC机硬盘的叙述Ⅰ.PC机使用的硬盘接口大多是IDE(E-IDE)接口Ⅱ.硬盘上的记录块要用柱面号、磁头号、扇区号和记录块号四个参数来定位Ⅲ.每个扇区的容量为512字节Ⅳ.平均寻道时间与磁盘的转速有关以上
下列关于汉字编码的内容: ① 中日韩统一汉字编码(CJK)是指汉字不论其字义和读音,主要字形相同,编码就相同 ② BIG5是我国台湾地区计算机使用的汉字编码字符集 ③ GB2312国际字符集中收录了包括简化汉字和繁体汉字 ④
随机试题
A.通过改变CO2的排出量调节血浆碳酸浓度B.通过中枢化学感受器调节酸碱平衡C.通过排泄固定酸和维持NAHCO3的浓度对酸碱平衡进行调节D.通过血红蛋白系统对酸碱平衡进行调节E.通过调节NA2HP04和NAH2PO4的平衡对
原发性醛固酮增多症患者出现肌无力的原因是
患儿男,7个月,一直人工喂养,因惊厥就诊入院,该患儿每日惊厥3~4次,每次约半分钟,入院查血钙明显降低,诊断为婴儿手足搐搦症。入院后再次惊厥。对该患儿急救处理时应选择
在德育的模式中,同时涉及两种道德规范不可兼得的情境或者问题叫作_______。
运用政治常识,说明“必须让权力在阳光下运行”的理由。
据医生介绍,干眼症症状是眼睛干涩、发红、怕光,看东西伴有刺痛感,眼睛容易疲劳。现在很多办公室一族白天在空调房对着电脑,晚上回家一进门就打开空调,很容易得干眼症。所以说,“空调+电脑”是干眼症的双重诱发因素。以下哪项如果为真,最能支持上述结论?()
虽然政府与企业、家庭一起共同参与国民经济,但其行为方式和目的_______。企业和居民是以收益最大化为前提和目标。而政府的经济活动一方面不能_______收益和成本,另一方面又必须以全社会的公正和公平为前提和目标。依次填入画横线部分最恰当的一项是
穆罕默德
设平面区域D由曲线y=x2,y=4x2和直线y=1围成,计算.
有3个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为()。
最新回复
(
0
)