请编制程序PROG1.ASM,其功能是:内存中连续存放着二个有符号字节序列Ak和Bk,求序列Ck(Ck=Ak+Bk)。例如: 源数Ak:0lH,02H,02H,02H,04H,05H… 源数Bk:01H,02H,02H,02H,04H,05H… 结果Ck:02H,04H,04H,04H,08H,0AH… 部分程序已经给出,其中原始数据由过程LOAD从文件INPUTl.DAT中读入SOURCE开始的内存元中,运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。 请在BEGIN和END之间补充一段源程序,完成要求的功能。 对程序必须进行汇编,并与IO.OBJ链接产生执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。 PROG1.ASM文件内容如下: EXTRN LOAD: FAR, SAVE: FAR N EQU 10 ;每个序列的长度 STAC SEGMENT STACK DB 128 UP(?) STAC ENDS DATA SEGMENT SOURCE DB N * 2DUP(?) ;顺序存放AO, ..., A9 ,BO,.. ,B9 RESULT DW N DUP(0) ;顺序存放CO,...,C9 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, NAME0 ;原始数据文件名 MOV CX, N*2 ;字节数 CALL LOAD ;从INPUT1.DAT文件中读取数据 ; * * * * BEGIN * * * * MOV DI,OFFSET RESULT ;结果从RESULT开始存放 MOV BX,0 MOV CX,N PRO: MOV AH ,0 MOV AL,_____ ;序列Bk中的一个字节 MOV DL, AL ; 暂存Bk _____ AL, SOURCE [BX] ; Ck = Bk + Ak JNO STAY ; 无溢出转STAY JUMP1: MOV AH ,00 ; 有溢出 ADD DL,O JNS JUMP ; Bk是正数(为一个正数加上 ; 一个正数,结果为负数的溢出 ; 情况)转JUMP(AH已为OOH) MOV AH,_____ ; Bk是负数(为一个负数加上 &nbs