计算机系统结构矩阵相乘代码,计算机系统结构报告用DLX编写矩阵相乘.doc

计算机系统结构报告用DLX编写矩阵相乘.doc

院 系:

专 业:

年 级:

课程名称: 计算机系统结构

学 号:

姓 名:

指导教师:

年 月 日

年级班级??学号?专业?姓名题目名称用DLX汇编语言编写矩阵相乘程序题目内容

1、掌握DLX应用程序的编程和调试技术。掌握DLX的流水线运行分析,包括流水线单步执行、每个流水段功能、理解流水线停顿、流水线建立和排空、定向技术。掌握调整DLX参数,如内存大小、功能单元个数、延迟,分析对程序运行的影响。

2、编写计算矩阵相乘的程序,掌握调试方法。

析实验结果:

先输入矩阵A和矩阵B的行数和列数,再输入矩阵A的各元素数值,显示矩阵A;再输入矩阵B的各元素数值,显示矩阵B;最后进行矩阵相乘,输出结果矩阵C。

(2)各矩阵元素均赋初值为0。

(3)显示流水线的部分时空图。

实验结果分析:

通过调用所编写的矩阵相乘的DLX汇编程序和input.s程序,运行WINDLX环境平台,加载好所需项后,根据提示输入两个矩阵的行和列的值及矩阵的各行各列所对应的元素数值,并显示要进行计算的两个矩阵,以便进行矩阵相乘,运行结束后自动显示得出矩阵的结果,本次实验可以重复运行进行矩阵相乘。实验同时亦可查看流水线分布及DLX的流水线运行分析,包括流水线单步执行、每个流水段功能、理解流水线停顿、流水线建立和排空、定向技术。?通过Prompt语句显示提示语句,输入所需数据,其计算结果一个一个地存放于内存中,利用PrintfPar语句输出结果。利用寄存器存放输入的矩阵元素和计算的结果,并将其在整形与浮点类型间进行转化。

(写不完时,可另加附页。)

;***********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 "

.align2

PrintfPar: .wordPrintfFormat

PrintfValue: .space4

PrintfForm

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值