当前位置: 答题翼 > 问答 > 计算机类考试 > 正文
目录: 标题| 题干| 答案| 搜索| 相关
问题

请编制程序PROG1 ASM 其功能是:内存中连续存放着12个字节的数字ASCII码字符串 将它们转换成相应


请编制程序PROG1,ASM,其功能是:内存中连续存放着12个字节的数字ASCII码字符串,将它们转换成相应无符号数字,并在原第1、5、9个数字前插入一个24H数值。将这20个数值存入 RESULT指示的区域。

例如:

源数:30H,31H,32H,33H,34H,35H,36H,…

结果:24H,00H,01H,02H,03H,24H,04H,…

部分程序已经给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存元中,运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。填空BEGIN和END之间已给出的源程序使其完整(空白已用横线标出,每行空白一般只需一条指令,但采用功能相当的多条指令也可),或删除BEGIN和END之间原有的代码并自行编程来完成要求的功能。

对程序必须进行汇编,并与IO.OBJ链接产生执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。

PROG1.ASM文件内容如下:

EXTRN LOAD:FAR,SAVE:FAR

N EQU 16

STAC SEGMENT STACK

DB 128 DUP()

STAC ENDS

DATA SEGMENT

SOURCE DB NDUP()

RESULT DB N+4DUP(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,NAMEO ;原始数据文件名

MOV CX,N ;字节数

CALL LOAD ;从INPUT1.DAT文件中读取数据

; * * * * BECIN * * * *

___________

MOV DI,0

MOV CX,4

MOV BX,_

INSER1: DEC BX

JZ EXIT

MOV RESULT[DI),0FFH

___________

MOV CX,4

CHAN: MOV AL,SOURCE[SI]

___________

MOV RESULT[DI],AL

___________

INC DI

DEC CX

JZ ______

JMP CHAN

EXIT: NOP

;* * * * END * * * *

LKA DX,RESULT ;结果数据区首址

LEA SI,NAME1 ;结果文件名

&nb

请帮忙给出正确答案和分析,谢谢!

参考答案
您可能感兴趣的试题
  • 程序Cmody051.c 其功能是统计输入字符串中大写英文字母的个数。请改正错程序中的错误。如输入:abcDEFGH123输出:5

  • 程序Cmody091.C 其功能是计算1至100之间的奇数之和 偶数之和。请改正错程序中的错误。

  • 程序Cmody062.c 其功能是将程序中的两个字符串ABC xyz连接在一起 并输出ABCxyz。请改正错程序中的错误。

  • 请编制程序PROG1.ASM 其功能是:内存中连续存放着二个有符号字节序列Ak和Bk 求序列Ck(Ck=Ak+Bk)。

  • 请编制程序PROG1.ASM 其功能是:计算10×3矩阵中每一行元素(八位二进制数)之和 并将其存放在指定的

  • 请编制程序 将内存中连续存放着的10个无符号16位二进制数 采用近似计算法求此10个数的近似平方根