assembly - 以 mips 计算平均值
问题描述
Aslam alikum 伙计们,你能帮我吗?我怎样才能找出错误
.data
num1: .word 3
num2: .word 5
num3: .word 3
num4: .word 3
num5: .word 5
num6: .word 3
num7: .float 6.0
xxx: .word 0
yyy: .float 0.0
.text
.globl main
.ent main
main:
lw $a0, num1
lw $a1, num2
lw $a2, num3
lw $a3, num4
lw $t0, num5
lw $t1, num6
l.s $f8, num7
subu $sp ,$sp,8
sw $t0 ,($sp)
sw $t1 ,($sp)
jal func
sw $v1 ,xxx
mtc1 $v1,$f6
cvt.s.w $f6 ,$f6
div.s $f10 ,$f6, $f8
s.s $f10,yyy
addu $sp ,$sp ,8
syscall
.end main
.globl func
.end func
func:
subu $sp ,$sp ,4
sw $fp , ($sp)
addu $fp , $fp ,4
li $v1 ,0
add $v1 , $v1 , $a0
add $v1 , $v1 , $a1
add $v1 , $v1 , $a2
add $v1 , $v1 , $a3
lw $t0 ,($fp)
add $v1 , $v1 , $t0
lw $t1 ,4($fp)
add $v1 , $v1 , $t1
lw $sp , ($sp)
addu $sp ,$sp ,4
jr $ra
.end func
解决方案
.data
num1: .word 3
num2: .word 5
num3: .word 3
num4: .word 3
num5: .word 5
num6: .word 3
num7: .float 6.0
xxx: .word 0
yyy: .float 0.0
.text
.globl main
.ent main
main:
lw $a0, num1
lw $a1, num2
lw $a2, num3
lw $a3, num4
lw $t0, num5
lw $t1, num6
l.s $f8, num7
subu $sp ,$sp,8
sw $t0 ,($sp)
sw $t1 ,($sp)
jal func
sw $v1 ,xxx
mtc1 $v1,$f6
cvt.s.w $f6 ,$f6
div.s $f10 ,$f6, $f8
s.s $f10,yyy
addu $sp ,$sp ,8
syscall
.end main
.globl func
.end func
func:
subu $sp ,$sp ,4
sw $fp , ($sp)
addu $fp , $fp ,4
li $v1 ,0
add $v1 , $v1 , $a0
add $v1 , $v1 , $a1
add $v1 , $v1 , $a2
add $v1 , $v1 , $a3
lw $t0 ,($fp)
add $v1 , $v1 , $t0
lw $t1 ,4($fp)
add $v1 , $v1 , $t1
lw $sp , ($sp)
addu $sp ,$sp ,4
jr $ra
.end func
它是计算 6 个数字的平均值
推荐阅读
- lambda - AWS Lambda 上的 Highcharts 导出服务器
- c# - 基于不同命名空间共享代码?
- c# - 在 .net 核心中使用依赖注入
- c# - 自定义类对象列表上有多个 .Contains(...)
- powershell - 列出组和组成员
- python - 将 Matlab 矩阵连接转换为 Python
- momentjs - Momentjs:日期到第一个月
- gooddata - 如何在 gooddata-js API 中向“execution.getData”添加“where”条件
- reactjs - 在上下文中按顺序调用钩子的“setState”以存储数据,从而导致竞争条件问题
- swift - 通过单击图像删除表格行