请编制程序,其功能是:求I×J矩阵的转置矩阵(矩阵中元素为字节型),并计算转置矩阵的每一行元素之和,然后存放在每一行最后一个字单元中。 例如: 内存中有:04H,05H,06H,(第一行)01H,02H,03H(第二行) 结果为: 04

admin2010-12-14  36

问题 请编制程序,其功能是:求I×J矩阵的转置矩阵(矩阵中元素为字节型),并计算转置矩阵的每一行元素之和,然后存放在每一行最后一个字单元中。
   例如:
   内存中有:04H,05H,06H,(第一行)01H,02H,03H(第二行)
   结果为:  04H,01H,05H,00H,05H,02H,07H,00H,06H,03H,09H,00H
   部分程序已给出,其中原始数据由过程LOAD从文件INPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从 RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。
   请填空BEGIN和END之间已经给出的一段源程序使其完整,需填空处已经用横线标出,每个空白一般只需要填一条指令或指令的一部分(指令助记符或操作数),也可以填入功能相当的多条指令,或删去BEGIN和END之间原有的代码并自行编程来完成所要求的功能。
   对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
   [试题程序]
                EXTRN    LOAD:FAR,SAVE:FAR
   N            EQU      30
   I            EQU      3
   J            EQU      10
   DSEG         SEGMENT
   SOURCE       DB       N DUP(?)
   SRC          DW       SOURCE
   RESULT       DB       (N+2*J)DUP(0)
   NAME0        DB       ’INPUT1.DAT’,0
   NAME1        DB       ’OUTPUT1.DAT’,0
   DSEG         ENDS
   SSEG         SEGMENT STACK
                DB       256 DUP(?)
   SSEG         ENDS
   CSEG         SEGMENT
                ASSUME  CS:CSEG,SS:SSEG,DS:DSEG
   START        PROC      FAR
                PUSH      DS
                XOR       AX,AX
                PUSH      AX
                MOV       AX,DSEG
                MOV       DS,AX
                MOV       ES,AX
                LEA       DX,SOURCE
                LEA       SI,NAME0
                MOV       CX,N
                CALL      LOAD
      ******** BEGIN ********
                LEA       SI,SOURCE
                LEA       DI,RESULT
                MOV       BX,1                       ; 第一列
   LPJ:         MOV       CX,0                       ; 累加和
                MOV       DX,1                       ; 第一行
   LPI:         MOV       AL,[SI]
                ADD       CL,AL
                 (1)  
                STOSB
                ADD       SI,10
                INC       DX
                 (2)  
                JBE       LPI
                MOV       [DI],CX
                 (3)  
                INC       SRC                         ; 下一列
                MOV       SI,SRC
                 (4)  
                CMP        BX,J
                JBE        (5)  
   ********  END  ********
                LEA       DX,RESULT
                LEA       SI,NAME1
                MOV       CX,(N+2*J)
                CALL      SAVE
                RET
    START       ENDP
    CSEG        ENDS
                END       START

选项

答案(1) ADC CH,0 (2) CMP DX,I (3) ADD DI,2 (4) INC BX (5) LPJ

解析
转载请注明原文地址:https://kaotiyun.com/show/GdgZ777K
0

相关试题推荐
最新回复(0)