- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言程序头巾设计第5章
例5-17 编制计算矩阵向量相乘的程序。比如: 计算公式为 展开为 使用双重循环在于:计算每一个ci时,均有4项,这是一重循环,而ci共有4个,这又是一重循环。所以要完成该题,就需要使用双重循环来计算。这就是说,每一个ci的计算过程都是相同的。因此可先考虑编制出一个计算ci(先固定i=1)的程序,为便于循环,把矩阵A的元素按行依次相邻存放,即a11,a12,a13,a14,a21,a22,a23,a24,a31,…,把向量B和C的元素也依次相邻存放,在数据段里定义数据项如下: A DB a11,a12,a13,a14 DB a21,a22,a23,a24 DB a31,a32,a33,a34 DB a41,a42,a43,a44 B DB b1,b2,b3,b4 C DW 4 DUP(?) 数据的存储分配如下: A[0]:a11 A[4]:a21 A[8]:a31 A[12]:a41 A[1]:a12 A[5]:a22 A[9]:a32 A[13]:a42 A[2]:a13 A[6]:a23 A[10]:a33 A[14]:a43 A[3]:a14 A[7]:a24 A[11]:a34 A[15]:a44 B[0]:b1 C[0]:c1 B[1]:b2 C[2]:c2 B[2]:b3 C[3]:c3 B[3]:b4 C[4]:c4 其中,小写字母a11,a12,…,a44,b1,…,b4等均代表具体的无符号数。 接下来应考虑c2的计算。计算c2和计算c1有两点不同:一是数据A从a21开始,而不是a11,也就是从A[4]开始,即SI从4开始而不是从0开始;二是结果存放在C[2]中,而不是C[0]中。其中,第一点不同,由于在计算c1的过程中SI每次加1,到计算完c1时,SI的值恰好是4,这一要求自然满足;第二点不同,可以利用基址寄存器BX,开始给BX送初值0,每循环一次加2,利用C[BX]间接寻址方式访问ci的方法解决。c3、c4的计算也是一样的。 c2的计算过程可看成是新的循环的初始部分,只是循环控制部分如果都用LOOP指令,都是用CX作为计数器的。因此需要将控制计算4个ci的CX的计数值暂时保存起来。比如,存放在其他此程序不用的寄存器里、一个字存储变量里或堆栈中。这里先将它暂时压入堆栈,在使用它之前(执行LOOP指令前)再从堆栈里弹出送回CX。 这里出现了一个循环程序的工作部分又是一个循环程序的情况,这就是一重循环套一重循环,称为双重循环。计算一个ci的循环叫做内循环;计算所有ci的循环叫做外循环。对于多重循环,一定要分清层次,内、外循环的四个组成部分应如何划分,一点也不能模糊。外循环的准备部分包括0→SI、0→BX和4→CX,其中,0→ SI也是内循环的准备部分;内循环的准备部分同时也是外循环的工作部分,包括PUSH CX、0→DI、0→C[BX]和4→CX,当外循环重复没有达到4次时,这些操作被外循环重复执行。如果不加分析地把控制转移出循环,那将是错误的。 给出一组可以进行计算的具体数据,定义在数据段以A为起始单元的区域中,计算结果存放在数组C里。为了程序简便、明了,本例没有写出二进制转化为十进制输出计算结果的指令序列。程序描述如下: NAME EX DATA SEGMENT A DB 1,0,2,3 DB 0,1,1,0 DB 3,0,1,0 DB 4,2,0,1 B DB 0,1,1,0 C DW 4 DUP(?) TOP DB ? DATA ENDS STACK SEGMENT PARA STACK STACK STAPN DB 100 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX MOV AX,TOP MOV SP,AX MOV SI,0
您可能关注的文档
最近下载
- 招标代理管理办法政策解读与执行.docx VIP
- 符合TSG07-2019起重机械安装体系2021年度内审及管理评审资料模板.pdf
- 小学六年级语文上册期末测试卷及答案【全面】.doc VIP
- C-J∕T 531-2018 生活垃圾焚烧灰渣取样制样与检测(高清可复制).pdf VIP
- DL_T 748.8-2021 火力发电厂锅炉机组检修导则 第8部分:空气预热器检修.docx VIP
- 施工进度计划和施工进度的保证措施.docx VIP
- 老年人照料场所消防安全重点部位管理规定.docx VIP
- 2022版 人教版 高中艺术 选择性必修4 戏剧创编与表演《第一单元 认识戏剧》大单元整体教学设计[2020课标].pdf
- 医院标本运送员的工作流程及考试题目(含答案).docx VIP
- 专题11 课外阅读三年级语文专项提升(统编版).pdf VIP
原创力文档


文档评论(0)