请编制程序,其功能是:求I×J矩阵的转置矩阵(矩阵中元素为字节型),并计算转置矩阵的每一行元素之和
请编制程序,其功能是:求I×J矩阵的转置矩阵(矩阵中元素为字节型),并计算转置矩阵的每一行元素之和,然后存放在每一行最后一个字单元中。
例如:
内存中有04H,05H,06H,(第一行)01H,02H,03H(第二行)
结果为 04H,01H,05H,00H,05H,02H,07H,00H,06H,03H,09H,00H
部分程序已给出,其中原始数据由过程LOAD从文件1NPUT1.DAT中读入SOURCE开始的内存单元中。运算结果要求从RESULT开始存放,由过程SAVE保存到文件OUTPUT1.DAT中。
请填空BEGIN和END之间已经给出的一段源程序使其完整,需填空处已经用横线标出,每个空白一般只需要填一条指令或指令的一部分(指令助记符或操作数),也可以填入功能相当的多条指令,或删去BEGIN和END之间原有的代码并自行编程来完成所要求的功能。对程序必须进行汇编,并与IO.OBJ链接产生可执行文件,最终运行程序产生结果。调试中若发现整个程序中存在错误之处,请加以修改。
试题程序:
(1)ADCCH,0 (2)CMPDX,I (3)ADDDI,2 (4)INC BX (5)LPJ 解析:此程序要实现的功能是:先求I×J矩阵的转置矩阵(矩阵中元素为字节型),再计算转置矩阵的每一行元素之和,然后存放在每一行最后一个字单元中。
先给N赋值为30,I赋值为3,J赋值为10。
程序的数据段中定义了四个字节型变量:原始数据区SOURCE、结果数据区RESULT、原始数据文件名NAME0、结果数据文件名NAME1;一个字型变量:SRC。数据段下面是堆栈段。堆栈段定义了一个256个字节的堆栈区。最后是代码段,告诉汇编程序,代码段、数据段和堆栈段分别属于段寄存器CS、 DS、SS。
将原始数据的偏移地址装入到SI中,结果数据存放的偏移地址装入到DI中。BX赋值为1,表示第一列。
LPJ段,先给累加和CX赋初值为0,DX赋值为1,表示第一行。
LPI段是要完成矩阵的转置,并且求和的功能。先将SI中内容即原始数据送AL中。再将CL与AL相加,加法结果可能产生进位,即CF=1,将进位放在DH中。所以第(1)空填写"ADCCH,0"。接着用STOS指令将第一行第一列的元素AL存入到DI中。SI地址加10,准备取第二行的元素。同时DX加1,将DX与I做比较,若DX小于等于I,则说明还有若干行的元素没处理完,转向LPI段;否则DX大于I时,说明I行所有的元素都已经处理完毕了。所以第(3)空填写"CMP DX,I"。接着将DI地址加2。因为除了将第一列的所有元素存放到DI中外,还存放了这些元素之和,并且和是占一个字的,即两个字节。所以第(3)空填写"ADD DI,2"。然后将表示列的BX加1,再将BX与J做比较,若BX小于等于J,说明还有若干列的元素没处理完,转向LPJ段;否则,BX大于J时,说明J列所有的元素都已经处理完毕了。所以,第(4)空填写"INCBX",空第(5)空填写"LPJ"。这样就完成了矩阵的转置和每一行元素的求和的功能。
学校拟建一块周长为400m的操场,操场的两头是半圆形,中间区域是矩形,为了使中间矩形的区域面积尽可 其他 2020-04-09 …
有一个矩形,将它四边中点连结起来,会得到一个什么图形(阴影部分)?若将一骰子(看做一个点,不考虑它 其他 2020-04-09 …
二阶矩阵和向量有联系,那么在不涉及矩阵的问题中,比如可以用向量解的一个问题,有没有可能...二阶矩 数学 2020-05-13 …
概率统计矩法估计问题1,用矩法估计以下分布中的未知参数p(见图)p(ε=k)=p*(1-p)^(k 数学 2020-05-17 …
设A、B和C分别是85*3、3*30和30*5的矩阵,试问应该按照什么顺序计算矩阵乘法ABC,才能 数学 2020-06-10 …
概率与统计.矩估计量与最大似然估计量一定相等吗?概率与统计.矩估计量与最大似然估计量一定相等吗? 数学 2020-06-20 …
“如何治国”是历代统治者探讨的一个焦点问题。春秋时期的管子认为,“虽有巧目利手,不如拙规矩之正方圆 历史 2020-06-30 …
有没有好心的大神原意帮姑凉写代码利用随机数生成两个4*4矩阵A,B(矩阵A的每个数为1-9的数,矩 数学 2020-07-11 …
用科学计算器能进行矩阵的基本运算吗?科学计算器可进行矩阵运算吗? 其他 2020-11-21 …
逆矩阵的问题请帮我求下,下面这个矩阵的逆矩阵,最好有过程的,{1,2,3}{4,5,6}{7,5,9 其他 2021-02-05 …