根据16位逻辑变量L的内容对内存单元中连续存放的十六个字符的数组SOURCE作如下处理: (1)若L的第
根据16位逻辑变量L的内容对内存单元中连续存放的十六个字符的数组SOURCE作如下处理:
(1)若L的第i位为1,将SOURCE[i]的最高位置加偶校验位
(2)若L的第i位为0,SOURCE[i]不变
例如:L=0005 转换之前:67H,61H,4EH,38H……
转换之后:E7H,61H,4EH,38H……
部分程序已经在PROG1.ASM中给出,请填空BEGIN到END之间已经给出的源程序,使其完整(空白已经用横线标出,每行空白一般只需要一条指令,但功能相当的多条指令亦可)或删除BEGIN与END之间的原有代码并自行编写程序片段完成所需的功能。
原有数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中,结果要求从RESULT开始存放,由SAVE保存到OUTPUT1.DAT文件。
对程序必须进行汇编,并与IO.OBJ连接产生PROG1.EXE执行文件,最终产生运行结果(无结果或结果不正确均不得分)。
部分源程序如下:
EXTRN LOAD:FAR,SAVE:FAR
N EQU 16
STAC SEGMENT STACK
DB 128 DUP (?)
STAC ENDS
DATA SEGMENT
L DW ?
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
LEA DX,L ; 数据区起始地址
LEA SI, NAME0 ; 原始数据文件名
MOV CX,2 + N ; 字节数
CALL LOAD ; 从"INPUT1.DAT"中读取数据
**** BEGIN ****
LEA SI, SOURCE
LEA DI, RESULT
MOV CX,N
MOV DX, (1)
LO: MOV AL, [SI]
(2) L,DX
JZ STORE
AND AL,AL
(3) STORE
(4)
STORE: MOV [DI],AL
INC SI
INC DI
(5)
LOOP LO
***** END *****
LEA DX,RESULT ; 结果数据区首地址
LEA SI, NAME1 ; 结果文件名
MOV CX,N ; 结果字节数
CALL SAVE ; 保存结果到文件
RET
&nbs
(1) 1 (2) TEST (3) JP (4) OR AL,80H (5) SHR L,1 或 SHL DX,1
设函数①sinx/x,若x<0f(x)=②k,若x=0③xsin(1/x)+1,若x>0连续,求k 数学 2020-04-27 …
若自然数n使得作竖式加法n+(n+1)+(n+2)均不产生进位现象,则称n为“可连数...若自然数 数学 2020-05-16 …
下面是两种移动电话计费方式表方式一方式二月租费50元/月0本地通话费0.6元/分0.2元/分1,若 数学 2020-05-17 …
在《致我们终将逝去的青春》上映时,某电影院的团体票有两种收费方式.方式一:购买票数满20共500元 其他 2020-06-13 …
设数集S是满足条件:若a∈S,则1/1-a∈S(a∈R且a≠0,1)(1)求证:若2∈S,则在S中 数学 2020-07-11 …
有关极限连续可导的问题下面说法是否正确?怎么改正?1若函数在一点处无定义,则函数在该点不连续,不可导 数学 2020-11-03 …
问下C程指针若有五个连续的int类型的存储单元并赋值如下,a[0]的地址小于a[4]的地址。p和s是 其他 2020-11-10 …
请问1980年纸币5元三十张市场价格,部分连号现在有1980年1角15张,2角12张,5角50张,1 其他 2020-12-02 …
麻烦老师解答:连线.连线.1.01元2分4.94元1元零1分0.02元4元9角4分7.89元6角3分 数学 2020-12-05 …
为了解决农民看病的问题,政府决定下调药品的价格,某种药品经过连续两次降价后,由每盒200元下调至每盒 数学 2020-12-20 …