首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
对内存单元中连续存放的20个ASCII字符进行转换,大写的“A—Z”转换成小写,小写的“a-z”转换成大写,其他字符变为00,结果存放在RESULT开始的内存单元中。部分程序已经在PROG1.ASM中给出,请编写BEGIN到END之间代码。 原有数据
对内存单元中连续存放的20个ASCII字符进行转换,大写的“A—Z”转换成小写,小写的“a-z”转换成大写,其他字符变为00,结果存放在RESULT开始的内存单元中。部分程序已经在PROG1.ASM中给出,请编写BEGIN到END之间代码。 原有数据
admin
2009-02-15
46
问题
对内存单元中连续存放的20个ASCII字符进行转换,大写的“A—Z”转换成小写,小写的“a-z”转换成大写,其他字符变为00,结果存放在RESULT开始的内存单元中。部分程序已经在PROG1.ASM中给出,请编写BEGIN到END之间代码。
原有数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中,结果要求从RESULT开始存放,由SAVE保存到OUTPUT1.DAT文件。
对程序必须进行汇编,并与10.OBJ连接产生PROG1.EXE执行文件,最终产生运行结果(无结果或结果不正确均不得分)。
部分源程序如下:
EXTRN LOAD:FAR,SAVE:FAR
N EQU 20
STAC SEGMENT STACK
DB 128DUP(?)
STAC ENDS
DATA SEGMENT
SOURCE DB N DUP(?)
RESULT DB 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
MOV ES,AX
LEA DX,SOURCE ;数据区起始地址
LEA SI,NAMED ;原始数据文件名
MOV CX,N ;字节数
CALL LOAD ;从"IArPUT1.DAT"中读取数据
****BEGIN****
*****END*****
LEA DX,RESULT ;结果数据区首地址
LEA SI,NAME1 ;结果文件名
MOV CX,N ;结果字节数
CALL SAVE ;保存结果到文件
RET
START ENDP
CODE ENDS
END START
相关知识:
●定义符号伪指令
指令功能:给一个表达式分配一个符号名或给一个符号分配一个值。
指令格式:(i)符号EQU表达式(不允许符号重定义)
(ii)符号=表达式(允许符号重定义)
●数据定义伪指令
指令格式:
(i)[名字]DB操作数1[,操作数2[,...]](为每个操作数分配1个字节的空间)
(ii)[名字]DW操作数1[,操作数2[,...]](为每个操作数分配2个字节的空间)
(iii)[名字]DD操作数1[,操作数2[,...))(为每个操作数分配4个字节的空间)
(iV[名字]DQ操作数1[,操作数2[,...]](为每个操作数分配8个字节的空间)
(v)[名字]DT操作数1[,操作数2[,...]](为每个操作数分配10个字节的空间)
●段定义伪指令
指令格式:段名 SEGMENT [定位方式] [联系方式] [’类别’)
使用段定义伪指令可以将程序和有关的数据信息定义在相应的段中。
●循环的实现
通过设置计数器初值,在完成一组操作后,修改计数器中的值,重新执行操作直到计
数器中的值为0。
例如:MOV CX,N
LI:
┆
LOOP L1(短标号地址)
或:DEC CX
JNZ 11(短标号地址)
注意:本书学习要点讲过的内容,本章节不予赘述。
●字符的ASCII码
十六进制数“0”~“F”是连续的,它们的ASCII码不是连续的,但仍然有规律可循,“0”~“9”的ASCII码为30H~39H,“A”~“F”的ASCII码为41H~46H,“A”~“Z”的ASCII是从41H开始连续的,“a”~“z”的ASCII是从61H开始连续的。
编程方法:
第一步:分析程序要求的功能。
本程序要求完成以下功能:
(1)从数据文件INPUT1.DAT中读取20个8位无符号整数存放在SOURCE开始的内存单元中。
(2)将SOURCE开始的20个ASCII码进行判断,处理,并将结果存放在RESULT开始的内存单元中。
(3)将处理结果存放在0UWUT1.DAT文件
第二步:用相应的汇编程序来实现其功能。
(1)数据的读取和存人文件部分的实现,题目中已经给出。
(2)大小写判断转换处理,我们可根据英文大写字母“A~Z”和小写字母“a~z”的 ASCII码是连续的,并且同字母的大小写的ASCII码相差20H,可以直接在其ASCII码上加减20H进行大小写的转换。
处理过程就是,从数组中取来一个元素,先判断它是否是大写,若为大写,则直接减 20H变为小写;否则判断它是否为小写,若为小写,直接减20H变为大写;若大小写均不是,就赋值为0。重复操作所有的元素。
选项
答案
LEASI,SOURCE UCA DI,RESULT MOV CX,N LOOP1:MOV AL, [SI] CMP AL, ’A’ JB SAVE_0_TO_RESULT ;不是大小写;存0 CMP AL, ’Z’ JA LOWER ;不是大写,转到判断是否为小写 ADD AL, 20H ;大写,转换成小写保存 JMP SAVE_To_RESULT LOWER:CMP AL, ’a’ JB SAVE_0_To_RESULT ;不是大小写,存0 CMP AL, ’z’ JA SAVE_0_To_RESULT ;不是大小写,存0 SUB AL, 20H ;小写,转换成大写,保存 JMP SAVE To RESULT SAVE 0 TO RESULT: MOV AL, 0 SAVE TO RESULT: MOV [DI], AL INC SI INC DI LOOP lOOP1
解析
转载请注明原文地址:https://kaotiyun.com/show/qjrZ777K
本试题收录于:
三级PC技术题库NCRE全国计算机三级分类
0
三级PC技术
NCRE全国计算机三级
相关试题推荐
信息系统研制队伍组成的最优组合是()。
详细设计规格说明通常使用如下手段()。
信息系统开发的结构化方法中,常使用数据流程图,其中数据加工是其组成内容之一,下述哪种(些)方法是用来详细说明加工的Ⅰ.结构化语言Ⅱ.判定树Ⅲ.判定表Ⅳ.IPO图
关于数据仓库中数据的描述,错误的是()。
当前第四代生成语言是在原型化定义策略中哪项假设中
以下是关于某个信息系统的描述,请问该系统属于哪种类型的信息系统?Ⅰ.该系统以提高工作效率为目标Ⅱ.该系统可以监测企业业务的运行状况Ⅲ.该系统面向3个管理层次的管理人员Ⅳ.该系统解决的问题是结构化问题
与广域网相比,局域网具有()特征。
信息系统的开发应有专门的研制开发队伍。组成这支队伍的方式一般有下面四种,这四种方式中既有利于企业信息技术人员的培养,又有利于系统的运行维护的方式是
微机系统中使用单片8259A时,在对它进行初始化编程时,任何情况下都不需写入的初始化命令是:
PC机中CPU进行算术和逻辑运算时,可处理的数据的长度为( )。
随机试题
中国金融认证中心
新产品是指在某个市场首次出现或者是首次向市场提供的,能满足某种消费需求的产品,诸如()
内耳血管纹的重要作用是
“辨证”就是把四诊(望诊、闻诊、问诊、切诊)所收集的资料、症状和体征,通过分析、综合,辨清疾病的病因、性质、部位,以及邪正之间的关系,概括、判断为某种性质的证。论治,又称为“施治”,即根据辨证的结果,确定相应的治疗方法。辨证是决定治疗的前提和依据,论治是治
下列方法中,可用于分析与评价工程项目风险的方法是()。
最通用的焊接方法有()。
【2016江西】以下选项不属于学习现象的是()。
甲公司和乙公司签订了一份买卖合同,双方约定:乙公司供给甲公司20辆汽车,货款总价值1000万元,甲公司先预付车款的20%,即200万元,剩余的车款800万元在交货后半年内付清。合同签订后,乙公司考虑到甲公司有可能将汽车私自转卖,便要求甲公司找个有实力的公司
Ifyoutravelbyairacrossthecentre(中部)ofAfricaorSouthAmerica,youflyoverforests(森林)forthousandsofkilometers.T
A、Collectashtreeseedsforexperiment.B、Preservethehealthyashtreeseeds.C、Setupanewseedbankforresearch.D、Develop
最新回复
(
0
)