计算机系统结构报告_用DLX编写矩阵相乘
院 系: 专 业: 年 级: 课程名称: 计算机系统结构 学 号: 姓 名: 指导教师:
年 月 日
1
年级 学号
班级
专业 姓名
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
目用DLX汇编语言编写矩阵相乘程序 名称
1、掌握DLX应用程序的编程和调试技术。掌握DLX的流水线运行
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
,包括流水线题目单步执行、每个流水段功能、理解流水线停顿、流水线建立和排空、定向技术。掌握调内容 整DLX参数,如内存大小、功能单元个数、延迟,分析对程序运行的影响。
2、编写计算矩阵相乘的程序,掌握调试
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
。
实验结果:
(1)先输入矩阵A和矩阵B的行数和列数,再输入矩阵A的各元素数值,显示矩阵A;
再输入矩阵B的各元素数值,显示矩阵B;最后进行矩阵相乘,输出结果矩阵C。
实
验
结
果
与
分
析
(2)各矩阵元素均赋初值为0。
2
实
验 (3)显示流水线的部分时空图。
结
果
与
分
析
实验结果分析:
通过调用所编写的矩阵相乘的DLX汇编程序和input.s程序,运行WINDLX环境平
台,加载好所需项后,根据提示输入两个矩阵的行和列的值及矩阵的各行各列所对应的
元素数值,并显示要进行计算的两个矩阵,以便进行矩阵相乘,运行结束后自动显示得
出矩阵的结果,本次实验可以重复运行进行矩阵相乘。实验同时亦可查看流水线分布及
DLX的流水线运行分析,包括流水线单步执行、每个流水段功能、理解流水线停顿、流
水线建立和排空、定向技术。 通过Prompt语句显示提示语句,输入所需数据,其计算
结果一个一个地存放于内存中,利用PrintfPar语句输出结果。利用寄存器存放输入的
矩阵元素和计算的结果,并将其在整形与浮点类型间进行转化。
(写不完时,可另加附页。)
3
;***********multiply an array to an array *************
;*********** *************
;------------------------------------------------------------------------
; Program begins at symbol main
; requires module INPUT
; Read two arrays, calculate the multiplition of two arrays
; and write the result to stdout
;------------------------------------------------------------------------
.data
;*** Prompts for input ;输入提示部分
dat1: .space 64
dat2: .space 64
result: .space 64
Prompt1: .asciiz "Input the martrixA line:"
Prompt2: .asciiz "Input the martrixA column and the martrixB line: "
Prompt3: .asciiz "Input the martrixB column:"
Prompt4: .asciiz "Input the martrixA's number:"
Prompt5: .asciiz "Input the martrixB's number:" 程 Prompt6: .asciiz "Do you want again (no=0):" 序
代 ;*** Data for printf-Trap ;输出数据设置部分 码 PrintfFormat: .asciiz "%d "
.align 2
PrintfPar: .word PrintfFormat
PrintfValue: .space 4
PrintfFormat1: .asciiz "\n "
.align 2
PrintfPar1: .word PrintfFormat1
PrintfValue1: .space 4
PrintfFormat2: .asciiz "Output the martrixA:\n "
.align 2
PrintfPar2: .word PrintfFormat2
PrintfValue2: .space 4
PrintfFormat3: .asciiz "Output the martrixB:\n "
.align 2
PrintfPar3: .word PrintfFormat3
PrintfValue3: .space 4
PrintfFormat4: .asciiz "Output the martrixC:\n "
.align 2
PrintfPar4: .word PrintfFormat4
PrintfValue4: .space 4
4
.text
.global main
main:
addi r1,r0,Prompt1
jal InputUnsigned
movi2fp f1,r1 ;矩阵A的行数
addi r1,r0,Prompt2
jal InputUnsigned
movi2fp f2,r1 ;矩阵A的列数,矩阵B的行数
addi r1,r0,Prompt3
jal InputUnsigned
movi2fp f3,r1 ;矩阵B的列数
movfp2i r8,f1
movfp2i r6,f2
multu r4,r6,r8 ;总的矩阵A的元素个数r4
addi r2,r10,dat1 ;指向A的首地址
loop1:
add r1,r0,Prompt4 ;分别读入矩阵A的元素值
jal InputUnsigned
程 sb 0(r2),r1 ;储存字节,读入元素 序 addi r2,r2,1 ;元素个数加一 代 sub r4,r4,1 ;总的矩阵元素个数r4减一 码 bnez r4,loop1 ;r4不为0时跳转重复输入
addi r10,r0,0 ;分别读出矩阵A的元素值
addi r2,r10,dat1 ;指向A的首地址
sw PrintfValue2,r1
addi r14,r0,PrintfPar2
trap 5
loopA:
lbu r1,0(r2)
sw PrintfValue,r1
addi r14,r0,PrintfPar ;换行
trap 5
addi r2,r2,1 ;元素个数加一
sub r6,r6,1 ;矩阵A的列数r6减一
beqz r6,outputA ;矩阵A的列数r6等于0时跳到outputA
j loopA ;否则继续loopA
outputA:
sw PrintfValue1,r1
addi r14,r0,PrintfPar1
trap 5
5
sub r8,r8,1 ;矩阵A的行数r8减一
beqz r8,countiuB ;矩阵A的行数r8等于0时跳到countiuB
movfp2i r6,f2
j loopA ;否则继续loopA
countiuB:
movfp2i r6,f2
movfp2i r12,f3
addi r10,r0,0
multu r4,r6,r12 ;总的矩阵B的元素个数r4
addi r2,r10,dat2 ;指向B的首地址
loop2:
addi r1,r0,Prompt5 ;分别读入矩阵B的元素值
jal InputUnsigned
sb 0(r2),r1 ;储存字节,读入元素
addi r2,r2,1 ;元素个数加一
sub r4,r4,1 ;总的矩阵元素个数r4减一
bnez r4,loop2 ;r4不为0时跳转重复输入
addi r10,r0,0 ;分别读出矩阵B的元素值 程 addi r2,r10,dat2 ;指向B的首地址 序 sw PrintfValue3,r1
代 addi r14,r0,PrintfPar3
码 trap 5
loopB:
lbu r1,0(r2)
sw PrintfValue,r1
addi r14,r0,PrintfPar ;换行
trap 5
addi r2,r2,1 ;元素个数加一
sub r12,r12,1 ;矩阵B的列数r12减一
beqz r12,outputB ;矩阵B的列数r12等于0时跳到outputB
j loopB ;否则继续loopB
outputB:
sw PrintfValue1,r1
addi r14,r0,PrintfPar1
trap 5
sub r6,r6,1 ;矩阵B的行数r6减一
beqz r6,countiue ;矩阵B的行数r6等于0时跳到countiu
movfp2i r12,f3
j loopB ;否则继续loopB
countiue:
addi r11,r0,0 ;temp,
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
示矩阵C的一个元素的累加器
6
addi r4,r0,0 ;r 初始化矩阵C的偏移量
addi r5,r0,0 ;矩阵A当前被扫描的行号
line:
movi2fp f4,r5 ;判断是否扫描完
ltf f4,f1 ;f4>f1跳转(矩阵A的行是否扫描完)
bfpf finish ;是,则跳转结束程序
addi r6,r0,0 ;col,r6表示当前B矩阵的列号
column:
movi2fp f4,r6
ltf f4,f3 ;col(f3)
本文档为【计算机系统结构报告_用DLX编写矩阵相乘】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。